Memo log
2023
08/03
以下のファイルを直接編集する!
C:\Users\ユーザ名\AppData\Local\Atlassian\SourceTree\bookmarks.xml
※注意
もしかするとSSHキーとの関連が切れて、つなぐときに改めてSSHキーの場所を指定してあげないといけないかも
Memo log
2023
07/28
1. xampp/mysql/data フォルダを _data にリネーム
2. xampp/mysql/backup フォルダを中身ごとコピーして data にリネーム
3. _data の ibdata1 ファイルを data に持ってきて上書き
4. xampp を起動してMySQLが動くか確認
5. OKなら _data の自作データのみを data に移動
6. rootのパスワードが初期化(=未設定)されてるので xampp 右部の shell で「mysqladmin -u root password」とコマンド打ってパスを設定
7. PHPMyAdmin にアクセスして問題ないか確認
Memo log
2023
03/27
1. インストール
$ composer create-project laravel/laravel --prefer-dist _laravel // prefer-dist = zipでダウンロードする。こっちのほうが高速 // 以下、忘れる前に作業用のルートディレクトリに移動 $ cd _laravel
2. .env ファイルと /config/ 以下を修正
// .env **どっか既存のプロジェクトから転写 + 適宜改修** // /config/app.php 'timezone' => 'Asia/Tokyo', 'locale' => 'ja', 'faker_locale' => 'ja_JP', // /config/database.php 'collation' => 'utf8mb4_general_ci',
3. 公開フォルダ用のシンボリックリンクを設定
$ php artisan storage:link
4. (必要により) マイグレーション時に不要な personal_access_tokens_table の生成をやめる
// /app/Providers/AppServiceProvider.php public function register() { \Laravel\Sanctum\Sanctum::ignoreMigrations(); }
5. デバッグ用の telescope をインストール
$ composer require laravel/telescope $ php artisan telescope:install // ツールバーもインストール $ composer require fruitcake/laravel-telescope-toolbar --dev
6. (必要により) 会員認証用の Laravel Breeze インストール
$ composer require laravel/breeze --dev $ php artisan breeze:install $ npm install // 日本語化 $ composer require askdkc/breezejp --dev // 使用時は以下コマンド $ npm run dev
7. 確認のためサーバー立ててアクセス
$ php artisan serve
8. DB設計し終わったらマイグレーション
// DB生成 + シーダー挿入 $ php artisan migrate $ php artisan db:seed
Memo log
2022
04/12
cd インストール先のディレクトリのひとつ上の階層 wget https://ja.wordpress.org/latest-ja.tar.gz --no-check-certificate tar -zxvf latest-ja.tar.gz rm -rf latest-ja.tar.gz
そうすると wordpress ってフォルダができてるのでリネームするなりそのまま使うなり。
Memo log
2021
03/30
Virtual Boxがエラーで動かなくなり、とはいえステータスは起動中のまま、止めも消しもできない場合の緊急停止コマンド
VBoxManage.exe startvm tabeloop_dev_default_1583414934558_88045 --type emergencystop
Memo log
2021
01/30
コマンドプロンプト立ち上げて下記
cd 対象のフォルダのパス && del /s /q /f /a .DS_STORE
Memo log
2020
08/25
// httpd-xampp.conf 削除
del D:\xampp\apache\conf\extra\httpd-xampp.conf
// phpディレクトリ 削除
rmdir D:\xampp\php
// httpd-xampp.conf 生成(バージョン名を記述)
mklink D:\xampp\apache\conf\extra\httpd-xampp.conf D:\xampp\apache\conf\extra\httpd-xampp.745.conf
// phpディレクトリ 生成(バージョン名を記述)
mklink /D D:\xampp\php D:\xampp\php-7.4.5
Memo log
2020
05/31
$ composer create-project laravel/laravel=6.* プロジェクト名
$ npm install laravel-mix cross-env node-sass --save-dev
$ php artisan make:model Banana -mcr
$ php artisan cache:clear && php artisan config:clear && php artisan config:cache && php artisan route:clear && php artisan view:clear && php artisan clear-compiled && php artisan optimize
$ composer update // 念の為
$ composer require laravel/ui:^1.0 --dev
$ php artisan ui vue
$ npm install && npm run dev
$ composer dump-autoload
$ php artisan migrate:fresh --seed
Memo log
2018
09/10
WordPressでACF使ってて、投稿オブジェクトで「自分の書いた投稿」だけを表示させたい場合、つまり「他のユーザーが書いた投稿は見せたくない」という場合、下記のコードをfunctions.phpに追加する。
function my_post_object_query($args){ $args['author'] = get_current_user_id(); return $args; } add_filter('acf/fields/post_object/query/name=投稿オブジェクトに設定したフィールド名', 'my_post_object_query', 10, 3);
add_filterに「投稿オブジェクトに設定したフィールド名」を記載するのをお忘れなく!
ちなみにここは日本語で設定してても、その通り日本語で書けば通るはず。
引用元:https://support.advancedcustomfields.com/forums/topic/post-object-only-query-current-user/
Memo log
2018
06/17
この書き方だと汎用性があるね!
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule ^(.*)$ https://%1/$1 [R=301,L] </IfModule>
Memo log
2016
09/24
下記を functions.php に書いて、どうぞ。
$tokyo_state = array ( array( 'label' => '千代田区', 'slug' => 'chiyodaku' ), array( 'label' => '中央区', 'slug' => 'chuoku' ), array( 'label' => '港区', 'slug' => 'minatoku' ), array( 'label' => '新宿区', 'slug' => 'shinjukuku' ), array( 'label' => '文京区', 'slug' => 'bunkyoku' ), array( 'label' => '台東区', 'slug' => 'taitoku' ), array( 'label' => '墨田区', 'slug' => 'sumidaku' ), array( 'label' => '江東区', 'slug' => 'kotoku' ), array( 'label' => '品川区', 'slug' => 'shinagawaku' ), array( 'label' => '目黒区', 'slug' => 'meguroku' ), array( 'label' => '大田区', 'slug' => 'otaku' ), array( 'label' => '世田谷区', 'slug' => 'setagayaku' ), array( 'label' => '渋谷区', 'slug' => 'shibuyaku' ), array( 'label' => '中野区', 'slug' => 'nakanoku' ), array( 'label' => '杉並区', 'slug' => 'suginamiku' ), array( 'label' => '豊島区', 'slug' => 'toshimaku' ), array( 'label' => '北区', 'slug' => 'kitaku' ), array( 'label' => '荒川区', 'slug' => 'arakawaku' ), array( 'label' => '板橋区', 'slug' => 'itabashiku' ), array( 'label' => '練馬区', 'slug' => 'nerimaku' ), array( 'label' => '足立区', 'slug' => 'adachiku' ), array( 'label' => '葛飾区', 'slug' => 'katsushikaku' ), array( 'label' => '江戸川区', 'slug' => 'edogawaku' ), array( 'label' => '八王子市', 'slug' => 'hachiojishi' ), array( 'label' => '立川市', 'slug' => 'tachikawashi' ), array( 'label' => '武蔵野市', 'slug' => 'musashinoshi' ), array( 'label' => '三鷹市', 'slug' => 'mitakashi' ), array( 'label' => '青梅市', 'slug' => 'omeshi' ), array( 'label' => '府中市', 'slug' => 'fuchushi' ), array( 'label' => '昭島市', 'slug' => 'akishimashi' ), array( 'label' => '調布市', 'slug' => 'chofushi' ), array( 'label' => '町田市', 'slug' => 'machidashi' ), array( 'label' => '小金井市', 'slug' => 'koganeishi' ), array( 'label' => '小平市', 'slug' => 'kodairashi' ), array( 'label' => '日野市', 'slug' => 'hinoshi' ), array( 'label' => '東村山市', 'slug' => 'higashimurayamashi' ), array( 'label' => '国分寺市', 'slug' => 'kokubunjishi' ), array( 'label' => '国立市', 'slug' => 'kunitachishi' ), array( 'label' => '福生市', 'slug' => 'fussashi' ), array( 'label' => '狛江市', 'slug' => 'komaeshi' ), array( 'label' => '東大和市', 'slug' => 'higashiyamatoshi' ), array( 'label' => '清瀬市', 'slug' => 'kiyoseshi' ), array( 'label' => '東久留米市', 'slug' => 'higashikurumeshi' ), array( 'label' => '武蔵村山市', 'slug' => 'musashimurayamashi' ), array( 'label' => '多摩市', 'slug' => 'tamashi' ), array( 'label' => '稲城市', 'slug' => 'inagishi' ), array( 'label' => '羽村市', 'slug' => 'hamurashi' ), array( 'label' => 'あきる野市', 'slug' => 'akirunoshi' ), array( 'label' => '西東京市', 'slug' => 'nishitokyoshi' ), array( 'label' => '西多摩郡瑞穂町', 'slug' => 'nishitamagun_mizuhomachi' ), array( 'label' => '西多摩郡日の出町', 'slug' => 'nishitamagun_hinodemachi' ), array( 'label' => '西多摩郡檜原村', 'slug' => 'nishitamagun_hinoharamura' ), array( 'label' => '西多摩郡奥多摩町', 'slug' => 'nishitamagun_okutamamachi' ), array( 'label' => '大島町', 'slug' => 'oshimamachi' ), array( 'label' => '利島村', 'slug' => 'toshimamura' ), array( 'label' => '新島村', 'slug' => 'niijimamura' ), array( 'label' => '神津島村', 'slug' => 'kozushimamura' ), array( 'label' => '三宅島三宅村', 'slug' => 'miyakejima miyakemura' ), array( 'label' => '御蔵島村', 'slug' => 'mikurajimamura' ), array( 'label' => '八丈島八丈町', 'slug' => 'hachijojima hachijomachi' ), array( 'label' => '青ヶ島村', 'slug' => 'aogashimamura' ), array( 'label' => '小笠原村', 'slug' => 'ogasawaramura' ), ); $parent_term = wp_insert_term('東京都', 'category', array('label' => '東京都', 'slug' => 'tokyo')); // カスタムタクソノミーに追加する場合は、上記の第二引数 'category' を適宜変更 if(!is_wp_error($parent_term)){ $parent_term_id = $parent_term['term_id']; foreach($tokyo_state as $state){ $state['parent'] = $parent_term_id; wp_insert_term($state['label'], 'category', $state); // カスタムタクソノミーに追加する場合は、上記の第二引数 'category' を適宜変更 } }
Memo log
2015
12/18
該当箇所のsmarty的な記述
<{section name=num loop=$recommend}>
のとこに step="-1" を追加するべし!
<{section name=num loop=$recommend step="-1"}>
これで自動的に新着順に並ぶんやでー
Memo log
2015
12/18
smartyのdebug_print_varを使うべし!
<{$product|@debug_print_var:0:100}>
Memo log
2015
03/25
新しい投稿を既存の記事のどれかに紐付けたい時とか、なんかどっかで使いたかった気がするのでメモ。
/* 投稿ページに表示させるカスタムボックスの設定 */ add_action('admin_menu', 'allpost_inputbox'); // 投稿ページ(post)に表示させる「全投稿選択欄」の設定 function allpost_inputbox() { add_meta_box('allpost_div', '全投稿選択欄', 'allpost_field', 'post'); } // 投稿ページに表示させるカスタムフィールドの設定 function allpost_field(){ $id = get_the_ID(); $allpost_select = get_post_meta($id, 'allpost_select', true); // 投稿データ(post)の取得 $allpost = get_posts('post_type=post&posts_per_page=-1&post_status=publish,draft,private'); wp_nonce_field(wp_create_nonce(), 'allpost_nonce'); echo '投稿をお選びください'; echo '<select name="allpost_select">'; foreach($allpost as $onepost){ $selected = ((int)$allpost_select === $onepost->ID)?' selected="selected"':''; echo '<option value="'.$onepost->ID.'"'.$selected.'>'.$onepost->post_title.'</option>'; } echo '</select>'; wp_reset_postdata(); } /* 入力したデータの更新処理の設定 */ add_action('save_post', 'allpost_save_postdata'); // カスタムフィールドの更新/保存の設定 function allpost_save_postdata($post_id){ $allpost_select = isset($_POST['allpost_select'])?$_POST['allpost_select']:''; update_post_meta($post_id, 'allpost_select', $allpost_select); }
Memo log
2014
12/10
何回かおんなじトコでつまづいたので備忘録。
スマホで list-style のCSSを書いても、うんともすんとも動かない!
.hoge { list-style: none disc outside; }
これ、androidでもiosでも効きません。。
理由→略した書き方に対応してない。ショートハンド内にnoneがあると、list-style-typeもlist-style-imageもnoneと解釈されるから(=仕様通り!)。
なので、同様のコトは下記のように、1個ずつ書けばOK!
.hoge { list-style-image: none; list-style-type: disc; list-style-position: outside; }
下記のように、list-style-imageの値を入れなきゃOK!
.hoge { list-style: disc outside; }
手癖でnoneも入れてたのがいけなかったんや!
悪いのはandroidでもiosでも無い、オレや!
教えてくれた@Yoshiki Katoさん、ありがとうございました!
Memo log
2014
09/10
すげー調べたわ。。。
typesプラグインのディレクトリの中の
embedded → common → toolset-forms → classes の中の「class.date.scrupts.php」の
9行目にある public static $_supported_date_formats の配列に
'Y年n月j日',
を追加!
さらに同ファイル18行目の public $_supported_date_formats_text の配列に
'Y年n月j日' => 'yyyy/mm/dd',
を追加!(コレは無くてもいいかも)
でもかなり強硬策だし、バージョンあげたら消えるからなぁ。。。
Memo log
2014
08/01
いやはや、当ブログのfunctions.phpでミスってて、思いっきり500 Internal Server Errorかっ飛ばしました。。
おかげで当サーバに載せてる全サービスが巻き添え。。
原因はfile_get_contents()関数をヌルい条件でループさせてた事なんですが、コレを機にしっかり書き直しました。
具体的には、file_get_contents()でデータ取得とともにステータスコードも受け取って、コード200以外はハネるようにedit!
$url = "http://example.com/"; $data = @file_get_contents($url, false, stream_context_create(array('http' => array('ignore_errors' => true)))); if($http_response_header[0] !== 'HTTP/1.1 200 OK') return false;
気をつけよう。。。
Memo log
2014
07/25
ユーザー → ユーザー一覧 のテーブルに追加したい項目にチェックを入れると、当該ページに表示されるようになる!
Memo log
2014
07/17
表示領域からはみ出た部分を非表示にして末尾を ・・・ にしてくれるCSSプロパティ「text-overflow: ellipsis」。
ただコレ、テーブル組みの td には、そのまんまじゃ効かない。
解決法はカンタン、親である table 要素に「table-layout: fixed」と指定すればOK!
table#my_table { table-layout: fixed; } table#my_table td { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
Memo log
2014
07/02
$(document).height();//最低のブラウザ領域
コンテンツの高さ総計 < ブラウザ可視領域 なら ブラウザ可視領域
コンテンツの高さ総計 > ブラウザ可視領域 なら コンテンツの高さ総計
$('html').height();//コンテンツの高さ総計
なので、サイドバーとかでコンテンツが少なくても多くても、常に最下部まで高さを持ってきたい場合は
var doc_height = 0; var html_height = $('html').height(); $(window).on("load resize", function(){ doc_height = $(document).height(); if(doc_height >= html_height) $('#sidebar').height(doc_height); });
って書いて、高さを取得 → サイドバーにその高さを代入する。