Because We Love Happy Coding

フリーライターからエンジニア × 講師。発信力だけあり余ってる感じ

jQuer.ajaxの戻り値を待ちたい

目次 目次 環境 ajaxを待ってくれない 解決方法 環境 JavaScript jQuery3.2.1 ajaxを待ってくれない web上のリソースにJavaScriptでアクセスしたくてこんなコードを書いた。 async function getData() { $.ajax({ type: 'GET', url: 'https://some.url.json'…

Custom Fieldの関連(relationship)をカテゴリ的に使ったら関連する投稿数が欲しくなった

目次 目次 環境 関連のreverseな関係 wp_reset_query()は二重サブループをすべて解除してしまう 環境 WordPress 5.2.2 Advanced Custom Fields(以下ACF) 関連のreverseな関係 書籍を紹介するブログを作っていて、投稿タイプpostを本1冊にわりふることにし…

Mac PhpStormのビルトインサーバーでWordPressを動かしたかったけどできんかった

職場でちょっとPHPを動かすのに、PhpStormのビルトインサーバー(Built-in server)が非常に便利だったので、自宅のMacで導入しようとしたらけっこうハマった……。 最終的に、PHPとMySQLを稼働させることはできたものの、WordPressは動かせてない(Windowsで…

`wp_query()`と`get_the_post_thumbnail()`

目次 目次 環境 手順など 環境 WordPress 5.2.1 手順など WordPressのwp_query()で、メタクエリを使って、関連記事(relationship)のサムネイルを呼びだそうとしてみた。 $books_query = new WP_Query( $args ); if($books_query->have_posts()): $addition…

WordPressのAmazonJSをiPhone7Plusから使いたい

WordPressのAmazonJSはWordPress5になっても使える便利なアフィリエイトコード用のプラグインなのだが、iPhone7Plusから使おうとすると、検索が終わってテンプレートを挿入しようと「選択」ボタンを押したタイミングで「挿入」ボタンが画面下にはみ出してし…

appendに関する小さな罠

調べればすぐわかることではあるんだけど。 目次 目次 環境 IE11で要素が表示されない JavaScriptのappend()と、JQueryのappend() 参考記事 環境 JQuery 2.2.4 JavaScript IE11で要素が表示されない IE11でボタンが表示されない、との連絡があった。Chromeで…

kintoneの無用のトラブルを避けるtips

自分がkintoneのカスタマイズを組んでて「ええっ」と思ったり「えー」と思ったりしたところをご紹介したい。 環境 kintone フィールド名に半角スラッシュ「/」を使わない 半角スラッシュは使えないのかというと、使える。 じゃあ使って問題ないかというと、…

kintone REST APIへクライアント証明書付きでアクセスする

あんまり詳しいドキュメントがみつからなかったので、拙いながらも参考まで。 環境 kintone クライアント認証 PHP-cURLを使ったSSLクライアント認証手順 - Qiita file_get_contentについて。 PHPでクライアント証明書が必要なWebサイトにアクセスする at sof…

Vue-router でリンクが効かない(ように見える)

同じコンポーネントから同じコンポーネントへ移動しようとすると、コンポーネントが再利用され、再描画されない現象が起こる。そのため、「リンクが効かない」ような錯覚を起こす next()を使って解決する コンポーネントのjs computed; created()なんかと並…

PhpMyAdminインポートで「413 Request Entity Too Large」が出る場合の処理

環境 さくらインターネット WordPress PhpMyAdmin 手順など WordPressのデータベースを移行しようとして、PhpMyAdminの「インポート」を使ってsqlファイルを読もうとすると、「413 Request Entity Too Large」になってしまう。 前回も調べてけっこうハマった…

改めて開発環境を整理しなおしたい

開発を始めてからこっち、いろんな記事を参考にあれを導入してみたり、これをやってみたりとまとまりがなかったこともあり、何から手をつけたものだかわかりにくくなり、開発効率まで下がっている気がする。 新しいMacBookProを購入したこともあり、今理解し…

ECCUBE3管理画面の「キャッシュ管理」が表示されないのは偶然じゃなかった

目次 目次 環境 手順など root_urlpathも危険。 環境 [EC-CUBE] EC-CUBE3.0.16 手順など しばらく前から、管理画面の中の「コンテンツ管理」「キャッシュ管理」の表示が変になっていた。 translator以外のチェック項目が消えてしまっていたのだ。 キャッシュ…

ECCUBE3 テンプレートイベントのformからデータを取り出す

ちょっと行き詰まったところがあったのでご紹介がてら。 目次 目次 環境 手順など 環境 [EC-CUBE] EC-CUBE3.0.16 手順など テンプレートイベントのformの値にアクセスする際、なかなか思ったようにいかなかったので、正解はこんな形だったというメモ。 欲し…

なぜSymfonyのフォームは融通が効かないか

Symfony2のフォームの仕組みはけっこう複雑だ。 FormType 、FormBuilder、FormViewといった段階的なフォーム生成 ModelData、NormData、ViewDataという三段階のデータ構造 handleRequest() した後は値を変更できない Entity のプロパティとのひもづけ 関与す…

ECサイトの英語化に使った英文例

コーディングとあんま関係ないけど……。 英語は我流なので正しいかどうかは知らぬ。自己責任でどうぞ。これは違うぜ! という御仁はぜひコメントしてください。 いくつか未訳なのは、作成したECサイト上で不要だったため。 'ログイン情報をお忘れですか?' =>…

ECCUBE3「フィールドグループに追加のフィールドを含んではなりません」

以下のメモは、まだECCUBE3のことをよくわかっていなかった時に書いたもの。とはいえ今でもまだ頭がよく整理できていない。 「フィールドグループに追加のフィールドを含んではなりません」と言われてしまう件について。 環境 [EC-CUBE] EC-CUBE3.0.16 prope…

Twigテンプレートでの文字列比較

目次 目次 環境 文字列の比較ってどうするんだろう? 参考記事 ~ 環境 Twig 文字列の比較ってどうするんだろう? テンプレート内で文字列を比較しようとして、はたと困った。 Twigの中でifが使えるのは分かっていたが、比較はどうやるんだっけ。 == を使うの…

JavaScript のawaitが無視される(ように見える)

目次 目次 環境 awaitの戻りを待たずに次の処理が進んでしまっている(ように見える) Promiseオブジェクトの状態を調べてみた 結論 環境 JavaScript ES2017 awaitの戻りを待たずに次の処理が進んでしまっている(ように見える) async関数の中にawaitを書い…

図を描きながらコーディングしたい

開発をしている当初は別に図示しなくてもサクサク描いていけるんだけど、しばらく間が空いたりするとコードの流れを追うのが苦痛になり、「やっぱ開発文書を残しておけばよかった……」となる。 特に図。図が欲しい時は多いのだけれど、なかなか思い通りにさく…

ECCUBE3のフックポイントを整理する

目次 目次 環境 共通フックポイント Controllerからdispatchされるフックポイント テンプレートフックポイント テンプレートフックポイント まとめ 参考記事 環境 [EC-CUBE] EC-CUBE3.0.16 フックポイントはプラグインから本体の挙動に手を加える重要なポイ…

ECCUBE3のログインアイコンの色を変える

ECCUBE3 のデフォルトでは、ログインしているかどうかがわかりづらい。 ログイン中、アイコンの色を変えてみる。 SVGファイルで形状を規定しているファイル。 html/template/default/img/common/svg.html CSSで色など規定しているファイル。 html/template/d…

ECCUBE3 で新商品登録時にClassCategoryを追加する

新しく商品を追加する時に、ClassCategory1がなくて怒られたので、追加処理を書いた。 環境 [EC-CUBE] EC-CUBE3.0.16 [PHP] 5.6.36 [データベース] MySQL 5.7.16 手順など $ClassName = $app['eccube.repository.class_name']->find(1);//idは例 $ClassCateg…

ソースコードから正規表現でメソッドのリストを取り出す

目次 目次 手順など EmEditor追記 ~~ 手順など 他の人が作成したコードを整理するときに、関数名だけとりあえずリストにして、フローチャートに突っ込んでみたい衝動に駆られた。 正規表現でなんとかなる予感。 正規表現で文字列を含まない、否定の記述 | UX…

AdvancedCustomFieldsのbooleanの値で`wp_query`をソートしようとしたら詰まった

目次 目次 環境 手順など 参考記事 環境 WordPress 5.2 手順など AdvancedCustomFields(以下ACF)のbooleanの値でwp_queryをソートしようとしたら詰まった。 true/falseのカスタムフィールドで並べ替えして記事を出すのはほぼ無理っぽい。 要因は3つ。 wp_q…

kintoneでルックアップフィールドの変更イベントを検出したい時のコツ

アプリA.foorbarルックアップフィールドで、アプリB.foobarレコードから、値を取得してきて、アプリA.hogeとか。アプリA.fugaとか更新しているとします。 そしてアプリA.foobarルックアップフィールドが変更された時に、アプリA.bazフィールドを変更したい場…

kintoneのサブテーブルを書き込もうとすると「カスタマイズ用のJavaScriptの実行時にエラーが発生しました。」と言われる

カスタマイズ用のJavaScriptの実行時にエラーが発生しました。アプリの管理者にお問い合わせください。 と言われてしまう件。 どうも、サブテーブルに書き込みをする際には、以下のような(直観的でない)仕様になっているような……。 書き込むjsonには、サブ…

ECCUBE3のメールテンプレートの改行規則がよくわからない

という話。 問い合わせメールの内容を変更していたのだけれど、改行が適用されたりされなかったりする。 ************************************************ ご請求金額 ************************************************ ご注文番号:{{ Order.id }} お支…

WP_Queryでカスタムフィールドの「関連」を呼び出す

WordPressの「Advanced Custom Field(ACF)」を便利に使っている。 その中に「関連(relationship)」というカスタムフィールドがあり、記事に別の投稿オブジェクトや投稿IDをひもづけることができる。 で、少々複雑なのだが、「自分自身に紐付けられている…

全角カナを含むかどうかPHPで判定する

仕事で「全角カナを含むかどうか判定する」という場面に遭遇した。正規表現で解決することにして、webの情報を探す。 目次 目次 文字コードの設定から 「含む」とか「含まない」とか サンプル 参考記事 文字コードの設定から mb_regex_encoding("UTF-8"); 「…

WordPressマルチサイトの移行で上手くいった手順

仕事で更新を依頼されたサイトがWordPressマルチサイトだった。 だいぶ複雑に手を加えられた迷宮状態だったので構造を理解するのにも時間がかかったんだけど、開発環境を構築するのにもえらい時間がかかった。 シングルサイトのWordPressならファイルとデー…