タグ

PHPに関するausnichtsのブックマーク (14)

  • WordPress:Amazonアソシエイトリンク作成プラグイン

    前記事2回の考察を経て自作の Amazonアソシエイトのリンク作成プラグインをつくりました。GPLv2 のコードを掲載していますのでライセンス範囲内においてご自由にお使いください。 Amazon アソシエイトリンクプラグイン imz-associate-linkキャッシュについての Amazonアソシエイト ガイドライン Amazon アソシエイトリンク 前記事は、 AmazonアソシエイトPA-API経由の商品リンクを作る 自作Amazonアソシエイトのリンク生成ツール です。 アラフィフ主婦のお小遣い 楽天Amazonアフィリエイトで収入を得る方法: ブログ超初心者向け在宅ワーク 50代主婦の在宅ワーク 奏ルナ 2023/07/18 Amazon こうした Amazonアソシエイト広告のご自身のトラッキング ID 付きリンクがショートコードを入れるだけで表示されます。 ショートコード

    WordPress:Amazonアソシエイトリンク作成プラグイン
  • 入れ子の正規表現は不可能?

    入れ子の正規表現は不可能? 01記事に埋め込まれたリストタグの目次を削除したい… やりたいことは次のとおりです。 はてブログから移行した記事内には目次がリストタグで書き込まれている その記事が300超ある WordPress に移行後はショートコードで自前の目次を挿入している WordPressに目次(プラグインなし、保存型) 記事内埋め込みの目次を削除してショートコードを挿入する 記事内の目次は、たとえば次のように入っています。 <ul id="toc" class="table-of-contents"> <li><a href="#現在うまくいっている方法">現在うまくいっている方法</a> <ul> <li><a href="#コンテナを一般ユーザーで稼働させる">コンテナを一般ユーザーで稼働させる</a></li> </ul> </li> <li><a href="#docker

    入れ子の正規表現は不可能?
  • 正規表現の最短一致でミスる

    正規表現では文字列に最短一致でマッチさせるために *? や +? など ? を使いますが、preg_replace を使って文字列を置き換えようとした際にミスったケースの話です。 はてなブログインポートツール bugfixpreg_replace での最短一致 01はてなブログインポートツール bugfix このブログもそうですが、1年半ほど前に、はてなブログで運用していた 3つのブログを WordPress に移しています。その際、ワンクリック(とはいかないが…)で簡単に移行できる「はてなブログインポートツール」というプラグインを作っています。そのプログラムに正規表現の最短一致についてバグがあったということです。 02preg_replace での最短一致 移行には、はてなブログのデータを MT(MovableType)形式でエクスポートしたファイルを使うわけですが、取り込む前にいくつか

    正規表現の最短一致でミスる
  • WordPress:階層化パンくずリスト決定版(プラグインなし、複数対応)

    これでパンくずリスト関連3回目、特にこだわっているわけではありませんが、当初勘違いしていたことと、やはり ol でマークアップしたほうがいいだろうということで3回になってしまいました。 これで決定版です(笑)。下が過去の記事です。 WordPress:階層化パンくずリストを複数表示する(プラグインなし) シンプルですが ol でマークアップされていません WordPress:階層化パンくずリスト(プラグインなし)とページネーション、ページャー 記事のカテゴリー選択の際、親と子両方にチェックを入れなくてはいけないと勘違いしていました 階層化パンくずリスト ol マークアップget_category_parents を使ってget_the_category, get_category を使って使い方 get_category_parents を使って まず前回の get_category_pa

    WordPress:階層化パンくずリスト決定版(プラグインなし、複数対応)
  • WordPress:jQueryなしのAjaxでウェブスクレイピング結果を表示する

    Heroku の無料プランが11月28日で終了することを受けて、その代替となる機能を WordPress 内で完結するよう実装しました。あらためて WordPress の Ajax を理解することが出来ました。 Ajax でウェブスクレイピング結果を表示するWordPress の Ajaxwp_localize_scriptFetch による Ajax スクリプトサーバー側 wp_ajax アクションフック結果をグローバル変数に保存している理由 01Ajax でウェブスクレイピング結果を表示する 関連記事は、 php正規表現 vs pythonスクレイピング phpからpythonを呼び出し結果を取得 Filmarks の自分の投稿へ飛ぶ疑似ソーシャルボタン Node.js でスクレイピングしてクライアントに返す 目的としていることはやや特殊ですが、Ajax やウェブスクレイピングの考え方

    WordPress:jQueryなしのAjaxでウェブスクレイピング結果を表示する
  • php正規表現 vs pythonスクレイピング

    現在はまだ Heroku を使っているのですが、実装しているのは次のサイトの各記事の文下の「Filmarks」ボタンです。 そんなには褒めないよ。映画評 ですので、9月18日現在では、Ajax -> Node.js サーバー -> Ajax の流れですが、上の記事ではウェブページから Ajax -> php -> python -> php ->Ajax という流れを試しているということです。 結果としては最も時間がかかる作業で /movies/69200?mark_id=40419254 処理時間:8.9638450145721秒 ということでした。上が取り出してきた url、下がかかった時間です。で、これを php の正規表現でやってみようということです。 02php の正規表現のほうが速い 結果からいいますと、php の正規表現のほうが速かったです。同じ作業の結果が次のとおりです。

    php正規表現 vs pythonスクレイピング
  • phpからpythonを呼び出し結果を取得

    Heroku の無料プランが11月28日で終了します。Heroku Dynosは月額7ドルの有料プランに移行できるのですが、現在利用しているのは Node.js アプリ1つですので、他に無料でできるのであればそれに越したことはありません。Node.js でやっているのはウェブスクレイピングですので python でやれば、WordPress を立ち上げているレンタルサーバー内で作業を完了できるのではないかということです。 Filmarks サイトから自分の投稿アドレスを取得する過去:はてなブログから Heroku の Node.js を呼ぶAjax -> php -> python -> php -> Ajaxphp のテスト用スクリプトpython スクリプト 01Filmarks サイトから自分の投稿アドレスを取得する 現在 Node.js を利用しているのは次のサイトの各記事の文下

    phpからpythonを呼び出し結果を取得
  • WordPressでiframeが表示されない(解決)

    タイトルは正確ではありません。WordPressでの iframe 関連のトラブルではあるのですが、表示されないのではなく、表示が iframe で止まってしまい、それ以降表示されないトラブルです。また、かなり特殊なケースですので、仮に同じ症状が出る場合でもあまり参考にはならないかもしれません。 iframe 以降表示されない症状原因と解消方法原因解消方法 01iframe 以降表示されない症状 次の記事があります。テキストブロックの間に GoogleMap のコードをカスタムHTMLで入れています。 問題なければ次のリンク先のように表示されるはずです。 問題のない表示 ところが次のように GoogleMap 以降表示されません。スクロールバーも含めてキャプチャしましたので iframe で止まっていることがよくわかると思います。

    WordPressでiframeが表示されない(解決)
  • WordPress:目次をプラグインなしで自動作成、自動表示する

    このブログはまだはてなブログですが、WordPress に移行したサイトがあり、プラグインなしで目次を自動作成、自動表示する機能を作成しました。 WordPress サイト「そんなには褒めないよ。映画評」 functions.phpsingle.phpライセンス等 投稿の新規追加、更新時に目次を作成する 目次は h2, h3 要素から作成する(h4〜も可) 目次はカスタムフィールドに保存する 目次の表示は投稿ページ表示時にカスタムフィールドを呼び出す すでに目次が挿入されている記事があることを想定する 01functions.php ご利用になる場合は、iframe など空要素になるタグで問題があります。次の記事をお読みください。 WordPressでiframeが表示されない(解決) アクションフック save_post を使って、記事の投稿、更新時に目次を作成してカスタムフィールドに保

    WordPress:目次をプラグインなしで自動作成、自動表示する
  • WordPress:DOMDocumentを使ってAdSenseを挿入する

    01 の前、なければ… 当該サイトにははてなダイアリーの頃からの記事がありますので目次なんてものが入っていない記事がたくさんあります。はてなブログで運用していた時には、Javascript文の子要素 Element.children の何個置きかに AdSense を挿入していたんですが、せっかく WordPress にしたんですから、サーバーサイドで挿入できないかということです。 目次がある場合 PHPにもDOM操作を出来る DOMDocument というクラスがありますが、目次があるのであれば各項目記事の最後、見出し <h2></2> の前に入れたほうが読む流れを中断しないということで preg_replace を使って挿入するほうが簡単にすみます。ググってもそうした記事がほとんどです。 例えば、 add_filter('the_content', 'add_adsense');

    WordPress:DOMDocumentを使ってAdSenseを挿入する
  • WSL2 に Apache, PHP インストール

    Windows10 に Linux 環境(wsl2)」で入れた WSL2 に Apache と PHP を入れます。今必要としているのは PHP だけですが、いずれ必要になりますので Apache も入れておきます。WordPress でもテストすることになればデータベースも必要になります。 Apache のインストールPHP のインストール 01Apache のインストール WSL2 上の Ubuntu を立ち上げ、ローカルソフトウェアパッケージを最新の状態にし、続いて Apache をインストールします。 $ sudo apt update $ sudo apt install apache2 Apache 2.4.41 が入りました。Apache を起動し http://localhost にアクセスして確認します。 $ sudo service apache2 start Apa

    WSL2 に Apache, PHP インストール
  • はてなブログのカテゴリーを一括再構成

    ブログを書き続けますと後からカテゴリーを再構成したくなることはありませんか? と思っても、過去記事が大量になりますとカテゴリーをつけ直すなんてことは現実的ではありません。その試みと結果です。 試みの具体例はてなブログの記事をまるごと入れ替える独自ドメインのブログを変更することは可能!Yahoo! API を使って記事タイトルから五十音順カテゴリーをつくる 01試みの具体例 このサイトです。 www.movieimpressions.com 映画のレビューを書いている別サイトで、現在、1181記事あります。元ははてなダイアリーからのものですので、当時カテゴリーというものがあったかどうかも記憶にありませんが、現在は「映画」「DVD」「recommend」3つに分類しているだけで現実的には意味がありません。 それで5年前に五十音順で分類できないか試みて、カテゴリー分けではなく別途五十音順の一覧を

    はてなブログのカテゴリーを一括再構成
  • PHPオブジェクト指向入門(前半) - Qiita

    コンセプト オブジェクト指向プログラミング未経験者~理解を深めたい人、ノンケ~ホモまで幅広くカバーするつもり。多分。 クラスとオブジェクト(初級) 唐突ですが、量産型のロボットの設計・製造について考えてみましょう。 ロボ太郎 ロボ次郎 イラストで初心者を釣る クラス まず、ロボットの設計図を クラス として定義します。設計図をもとにロボットを製造するには、 new 演算子を使います。製造された物体のことを オブジェクト や インスタンス と呼びます。ここではこれらの用語を区別せずに用いることにします。 Yahoo!知恵袋 - オブジェクトとインスタンスの違い

    PHPオブジェクト指向入門(前半) - Qiita
  • 保守性・管理性が劇的に上がるPHPのスマートなコードの書き方12選 | BULK SERVER blog

    プログラミング言語には様々なものがありますが、その中でも比較的人気なのがPHPです。PHPHTMLファイルに直接記述できるスクリプト言語であり、その手軽さや言語自体のわかりやすさなどから、主にWebサービスの制作でその人気を獲得しています。 PHPは他の言語に比べてとても簡単な仕様となっており、初心者でもすぐにマスターすることができるものです。そして、同じプログラムを書く際でも複数の書き方が可能になっており、使用者に合わせた柔軟性も兼ね備えています。 そのような様々な書き方があるならば、なるべく手短でスマートなコードの書き方をマスターしたいものです。コードをスマートに記述することは以下のメリットがあります。 見やすくなることで保守・管理性の向上 コード量の短縮 記述時間(制作時間)の短縮 組織でのプログラミングルールの簡潔化が可能 このようにメリットが様々あるので、同じプログラムであれば

    保守性・管理性が劇的に上がるPHPのスマートなコードの書き方12選 | BULK SERVER blog
  • 1