タグ

ブックマーク / elearn.jp (8)

  • スクリプトファイルのバージョンパラメータを変更する

    説明Java Scriptやスタイルシートの指定を直接head要素内に記述せず、wp_enqueue_scriptsフィルターなどを使って指定する場合、WordPressのバージョン番号が付与されている。このバージョン番号は、妥当なんだろうか。 テーマにおいてJava Scriptやスタイルシートを指定する場合、テーマ内のfunctions.phpなどに次のような内容を記述する。 function my_enqueue_scripts() { wp_enqueue_style( 'mytheme-style', '/css/common.css' ); wp_enqueue_script( 'mytheme-script', '/js/common.js' ); } add_action( 'wp_enqueue_scripts', 'my_enqueue_scripts' ); <lin

  • 4.2で始まるiOSの絵文字ケア

    説明WordPress 4.2のベータ1、ベータ2が立て続けにリリースされ、4.2の正式版リリースが近づいています。4.2のポイントの1つは絵文字のクロスブラウザ対応です。ここでの絵文字とは、UTF-8で4バイトのコードが割り当てられている(基的にはiOSの)絵文字を指します。この絵文字を含んだ投稿が正しく保存できなかったり、iOS以外の環境で意図した通りに表示できないといった問題があり、4.2ではそのような問題を対処をコードが組み込まれています。 今回の絵文字対応について紹介する前に、ここで記載する内容はWordPress 4.2ベータ2のソースコードをもとにしていることをあらかじめお伝えいたします。そのため正式版では内容が変更される可能性がありますので、ご了承ください。 投稿情報の保存 絵文字の問題の1つは、絵文字を含んだデータを標準設定(テーブルのcharsetが'utf8')のM

  • ログインページを変える

    説明 WordPressの標準的な不正ログイン対策としては、ログインIDは'admin'を避けるパスワードはユニークで長くする、場合によってはアクセスできるIPアドレスを制限する、といった具合だろう。これらの他に何かできないものだろうかと、ちょっと考えてみた。 きっかけは、日々のログに残っていくwp-login.phpのアクセス履歴。まあ、パス名はわかっているのだから、仕方ないないのかもしれない。逆にパス名がわからなければこんなアクセスは激減できるのではないだろうか。 ユニークなログインページを配置する wp-login.phpの変わりとなる新しいログインページのソースコードは次の通り。 <?php define( 'ANYWHERE_LOGIN', sha1( 'keyword' ) ); require_once './wp-login.php'; ?> このログインページのファイル名

  • 固定ページのURLの拡張子をhtmlに変更する

    説明 固定ページについて、URLを静的ページっぽく拡張子htmlに変更したいという要望を受けることがある。これまでは「.html on PAGES」というプラグインを使っていて特に不満があったわけではないのだが、今回ひょんなことから簡単に対応できることがわかったので、メモ書きしておく。 きっかけとなったのは、カスタム投稿タイプのパーマリンク設定について調べている際にwp-includes/rewrite.phpをナナメ読みしている中、$wp_rewriteのget_page_permastructメソッドを見つけたあたり。さっそく自テーマのfunctions.phpにinitアクションを追加し、試したところあっけなく動作しました。コードは次の通り('mytheme'の部分はお好みで変更を)。 add_action( 'init', 'mytheme_init' ); if ( ! func

  • 時代はWP_Queryなのか

    説明 WordPressのテーマ作成において、メインの投稿記事とは別に特定の条件を指定した投稿内容を表示することが多々ある。つい最近まで get_posts関数を使用することが多かったのだが、最近はWP_Queryクラスを使用することが多くなってきた。 WP_Queryクラスはとても多機能であり、WordPressの投稿記事を検索・表示するための重要なクラスである。このWP_Queryクラスを使用した投稿記事の表示処理は、それほど特別なものではない。例えば'ニュース'というカテゴリーの最新投稿を5件取得する場合は、次のように記述する。 $apart_args = array( 'order' => 'DESC', 'posts_per_page' => 5, 'category_name' => 'ニュース' ); $apart_posts = new WP_Query( $apart_a

  • load_plugin_textdomain

    bool load_plugin_textdomain( string $domain [ , mixed $abs_rel_path $deprecated = false [ , mixed $plugin_rel_path = false ] ] )

  • shortcode_atts

    Emojin:プラグイン作ってみました(2015年3月21日 更新) ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

  • get_postsとquery_postsを使い分け

    同じような機能を持つquery_postsとget_postsは、どうを使い分けたらいいのか整理してみた 説明 get_postsと query_postsは、どちらも複数の投稿情報を取得することができる便利な関数である。パラメータとして指定できる内容も共通しているものが多く、query_postsがより詳細なパラメータを指定でき、高機能になっている。 まずは、パラメータで指定できる意味(目的)が同じキーワードを見ていこう。

  • 1