やったこと

webサービスを作るときに考えたことを垂れ流します

Laravelのバージョンはどのファイルに書いてあるの

Laravelのバージョン情報が書いてあるファイルはこれ!

./vendor/laravel/framework/src/Illuminate/Foundation/Application.php

こんな風にバージョン情報が書いてあるよ!

    /**
     * The Laravel framework version.
     *
     * @var string
     */
    const VERSION = '5.5.40';

「The Laravel framework version」の文字でgrepして見つけてみてね!

以上!

grep結果を対話形式で削除してくれるシェルスクリプト!

grepでヒットしたファイルを対話形式(y/n)で削除するシェルスクリプトだよ!

以下を実行すると「grep -rl "hogege"」でヒットしたファイルを「本当に削除する?」と一個ずつ問い合わせて、順に削除してくれるよ!

grepを実行したいディレクトリで、shコマンドを叩いてみてね!
(いきなり削除するとやばいかもしれないので、ちゃんと動作確認とかしておいてね!)

#!/bin/sh

#grepでファイル名一覧を取得
files=$(grep -rl "hogege")

#y/n を訊いて順番に削除する
for file in $files
do
  echo "このファイルを削除しますか?(y/n)"
  echo $file
  read yes_or_no

  if [ $yes_or_no = "y" ]; then
    rm $file
  fi
  echo ""
done

以上!

【Wordpress】管理画面のタクソノミー一覧で子要素が表示されない!

ワードプレスでタクソノミーの名前を変更したら、管理画面で子要素が表示されなくなってしまった・・。

本当は親要素の下のところに「-」が付いた形で、子要素が階層的に表示されるはずなんだけどね。

これは「wp_options」のテーブルの中の、子要素を管理する情報が更新されていないから。

直し方はかんたんで、「test」みたいな適当なタクソノミーを、管理画面でいったん追加してみるといい。

これでテーブルが更新されて、子要素がちゃんと表示されるようになるから。

【Wordpress】カスタム投稿のタイトルを文字列検索してタームを設定!

ワードプレスのカスタム投稿をタイトルで検索して、まとめてタームを追加するよ!

下記のようなコードを実行すると、タイトルに「横浜」を含むカスタム投稿を抽出して、それらに「東京」というタームをセットするよ!

<?php

//カスタム投稿を条件検索
$args = array(
  'numberposts' => 10000,  //とりあえず1万件抽出
  'post_type' => 'address',   //adressという名前のカスタム投稿タイプを検索
  's' => '横浜'  //タイトルを「横浜」で検索
);
$customPosts = get_posts($args);

foreach($customPosts as $post){
  $post_id = $post->ID;
  $taxonomy = "area";  //追記するタクソノミーの名前は「area」
  $terms = "tokyo";  //追記するターム「東京」のスラッグ名は「tokyo」
  wp_set_object_terms($post_id, $terms, $taxonomy, true);  //タームをセット!
}

?>

以上!

レスポンシブのグーグル広告の高さが設定できない!

グーグルアドセンスの「レスポンシブ」の広告を張り付けるときに、レイアウトの調整ができなくて困った…。

広告領域の高さを最大300pxまでに制限したかったんだけど、この広告を張りつけた親要素には強制的に「height: auto !important;」が付与される様子。
なので、かっこう悪い縦長のバカでかい広告ばかりが表示されてしまう。
(こんなサイズは見っともないので使いたくない…)

広告のサイズを制限したかったら、おとなしくレスポンシブでなくて「固定サイズ」の指定をしなさいということなんだろうか…。

【LINUX】sedでファイルの末尾に変数の文字列を追記する!

LINUXシェルスクリプトを使ってファイルの末尾に文字列を追加するよ!
下記のシェルでは「text.txt」というファイルの最後に

owari!
owari!
owari!

と三行の文章を追記しています!

#!/bin/sh
file='test.txt'

#フッタ部分を追加
foot='owari!\n'
foot=$foot'owari!\n'
foot=$foot'owari!\n'

sed "\$a ${foot}" ${file}

sedコマンドの中の「$a(最終行)」の箇所をエスケープするのがポイントだよ!
これをしないと「コマンドが見つかりません」とかエラーが出て怒られちゃうから注意!

以上!

mixhostのサーバーでドメイン追加しようとしたらエラー発生!

ミックスホストで借りたサーバーで、新しく「アドオンドメイン」の画面からドメインを追加しようとしたんだけども、

「A DNS entry for “xxxx.com” already exists. You must remove this DNS entry from this server or all servers in the DNS cluster to proceed.」

などとエラーが出て、新規追加できなくなってしまった・・。

状況としては、下記のような「mixhostサーバー」→「mixhostサーバー」の間で、お引越しをしようとした時に発生したもの。
複数サーバーアカウントを契約しているのですが、サーバー間でドメインの移動は可能ですか? – mixhost ヘルプ&サポート

しばらく待てばエラーが解消されるかと思い、半日くらい放置したんだけども、依然として登録不能な状態が続いた。
だんだん不安になってきたので、カスタマーサポートの窓口にメールを送って状況を知らせてみた。

そうしたら「申し訳ありません・・」とメールが帰ってきて、数時間くらいでエラーを解消してくれた。

何かの不具合だったんだろうか・・。
とりあえずは、このエラーが発生したら、窓口にメールをして訊いてみるのがよさそうです・・。

以上!