テーマのカスタマイズのための10のWordPressスニペット
WordPressを使用しているときは、テーマのおかげで、Webサイトの外観を変更するのは非常に簡単です。無料またはプレミアム価格の両方で利用可能なWordPressテーマはたくさんあります(まるごとたくさんあります)。テーマを選んでインストールすれば、あなたは数分以内にあなたのウェブサイトをまったく新しい外観にすることができます。.
しかし、ルックアンドフィールを与える以外にも、WordPressテーマはさまざまな方法で拡張できます。プラグインを使って新しい機能を構築することができますが、この記事では私たちが見ています あなたのテーマに便利なWordPressの機能. 効果を発揮させるには、これらの関数をテーマのfunctions.phpファイルに配置するだけです。.
推奨読書:WordPressでコードスニペットを管理し使用する方法
1.抜粋の長さを変更する
あ 抜粋 あなたが見ることができるあなたの投稿の短い部分です。この場合、WordPressは抜粋をデフォルトで55ワードに設定します。しかし、WordPressでは、次のようにしてデフォルトの長さをカスタマイズできます。 抜粋長
次のようにフィルタ.
関数my_excerpt_length($ length)戻り値30; add_filter( 'excerpt_length'、 'my_excerpt_length'、999);
戻り値は、抜粋として表示される単語の合計を表します。上の例では、抜粋の中に各投稿に30単語分を表示しています。.
2.ポスト改訂を減らす
WordPressでは、作家やブロガーが以前のバージョンの作品を振り返ることができます。ただし、改訂の数が増えると、新しく記録された改訂ごとにデータベースに新しい行が追加されるため、Webサイトのパフォーマンスにも影響する可能性があります。この問題は時間の経過とともに悪化するだけです.
この問題を解決するために、データベースに保存するリビジョンの数を設定できます。これを行うには、 wp-config.php そしてこのスニペットを以下に追加してください。保存したいリビジョンの数を制限するために数を変更してください.
define( 'WP_POST_REVISIONS'、5);
WordPressのリビジョンを無効にしたい場合は、値を FALSE
このような:
define( 'WP_POST_REVISIONS'、false);
3.投稿におすすめの画像を自動的に設定する
投稿を表すまたは説明する特集画像を表示するのが一般的な方法です。 WordPressでは、このおすすめの画像を設定する必要があります。 手動で. プロセスをより効率的にするために、注目の画像を設定できます。 自動的に 投稿の最初の画像を特集画像にすることで。次のコードスニペットを使用してください.
function autoset_featured()グローバル$ポスト。 $ already_has_thumb = has_post_thumbnail($ post-> ID); if(!$ already_has_thumb)$ attached_image = get_children( "post_parent = $ post-> ID&post_type = attachment&post_mime_type = image&numberposts = 1"); if($ attached_image)foreach($ attachment_id => $ attachmentとしての$ attached_image)set_post_thumbnail($ post-> ID、$ attachment_id); add_action( 'the_post'、 'autoset_featured'); add_action( 'save_post'、 'autoset_featured'); add_action( 'draft_to_publish'、 'autoset_featured'); add_action( 'new_to_publish'、 'autoset_featured'); add_action( 'pending_to_publish'、 'autoset_featured'); add_action( 'future_to_publish'、 'autoset_featured');
4.最小コメント長を強制する
1〜2語のコメントのファンではない “ナイスポスト!”, “よくやった!”? コメントはスパムではないかもしれませんが、これらは一般的にそれ以上の議論を奨励しない種類のコメントです。あなたがあなたのコメンターに話をさせたいのなら、読者が彼らのコメントを投稿することができる前に必要とされる単語の最小の長さを設定することができます.
以下は、コメントの最小文字数または単語数を設定するためのスニペットです。中に入れて functions.php.
関数minimal_comment_length($ commentdata)$ minimalCommentLength = 20; if(strlen(trim($ commentdata ['comment_content'])))
$ minimalCommentLength
valueは必要な最小文字数です。これを微調整するには、この値を変更します。.5.ユーザーコメントからのリンクを無効にする
コメントフォームに含まれているリンクは、投稿され承認されるとすぐにクリック可能なリンクになります。これはスパマーに悪用される可能性があり、コメント欄に「スパム」ページへのリンクを追加することを促します。.
これに対抗するには、このフィルタを追加してリンクのクリック機能を無効にし、それらを単純なプレーンテキストとして保持することができます。.
remove_filter( 'comment_text'、 'make_clickable'、9);6.カスタムメニューからクラスとIDを削除する
WordPressのカスタムメニューを見ると、すべてのメニュー項目にたくさんのクラスとIDがあります。不要なクラスを削除し、必要なクラスを保持するには、以下のスニペットを使用してください。.
function my_css_attributes_filter($ var)return is_array($ var)? array_intersect($ var、array( '現在のメニュー項目')): "; add_filter( 'nav_menu_css_class'、 'my_css_attributes_filter'、100、1); add_filter( 'nav_menu_item_id'、 'my_css_attributes_filter'、100、1) add_filter( 'page_css_class'、 'my_css_attributes_filter'、100、1);上記のコードでは、
現在のメニュー項目
クラス.7.検索からページを除外する
WordPressで検索を実行すると、ページと投稿の両方から結果が取得されますが、検索クエリとの関連性が低い場合があります。これを防ぐには、投稿に見つかったものだけを表示するように検索結果をフィルタすることができます。にこのスニペットを追加 function.php これをする.
function SearchFilter($ query)if($ query-> is_search)$ query-> set( 'post_type'、 'post'); $ queryを返します。 add_filter( 'pre_get_posts'、 'SearchFilter');ハウディテキストを置き換える
「ハウディ」というテキストにうんざりしていませんか。あなたがそれをあなたのサイト上の特別な挨拶文に変更したい場合は、単にfunctions.phpにこれを追加すれば効果はすぐに起こります.
関数change_howdy($ translation、$ text、$ domain)if(false!== strpos($ translation、 'Howdy'))return str_replace( 'Howdy'、 'こんにちは'、$ translation);翻訳された$を返します。 add_filter( 'gettext'、 'change_howdy'、10、3);9.特定の役割に対する追加のメニュー削除を追加する
このスニペットを使用して、管理者以外のユーザー用にダッシュボードにあるメニューを非表示にすることができます。.
function remove_admin_menus()if(is_user_logged_in()&&!current_user_can( 'administrator'))remove_menu_page( 'index.php'); //ダッシュボードremove_menu_page( 'edit.php'); // remove_menu_page( 'upload.php');を投稿します。 //メディアremove_menu_page( 'edit.php?post_type = page'); //ページremove_menu_page( 'edit-comments.php'); //コメントremove_menu_page( 'themes.php'); //外観remove_menu_page( 'plugins.php'); //プラグインremove_menu_page( 'users.php'); //ユーザーremove_menu_page( 'tools.php'); //ツールremove_menu_page( 'options-general.php'); add_action( 'admin_init'、 'remove_admin_menus'); //設定これは単に画面からメニューを削除するだけですが、これらのメニューにアクセスするためのユーザーの許可をフィルタするものではありません。ユーザーがブラウザのアドレスバーから直接これらのメニューにアクセスするのを妨げることはありません。あなたにそれらを追加することを忘れないでください functions.php.
10.管理者以外の管理バーリンクを削除する
サイドバーのメインメニューの他に、WordPressダッシュボードの上部にもいくつかのメニューリンクがあります。特定のロールまたはユーザーからこの管理バーリンクへのアクセスを制限できます。このスニペットは、管理者ではないユーザーの管理バーのメニューを削除します - それに応じて調整してください.
function remove_admin_bar_links()グローバル$ wp_admin_bar; if(!current_user_can( 'administrator'))$ wp_admin_bar-> remove_menu( 'wp-logo'); // WordPressロゴを削除します。$ wp_admin_bar-> remove_menu( 'about'); // WordPressのリンクを削除する$ wp_admin_bar-> remove_menu( 'wporg'); // WordPress.orgのリンクを削除する$ wp_admin_bar-> remove_menu( 'documentation'); // WordPressのドキュメントリンクを削除する$ wp_admin_bar-> remove_menu( 'support-forums'); //サポートフォーラムを削除するリンク$ wp_admin_bar-> remove_menu( 'feedback'); //フィードバックリンクを削除する$ wp_admin_bar-> remove_menu( 'site-name'); //サイト名のリンクを削除する$ wp_admin_bar-> remove_menu( 'view-site'); //訪問サイトのリンクを削除する$ wp_admin_bar-> remove_menu( 'updates'); //更新リンクを削除する$ wp_admin_bar-> remove_menu( 'comments'); //コメントリンクを削除する$ wp_admin_bar-> remove_menu( 'new-content'); //新しいコンテンツリンクを削除する$ wp_admin_bar-> remove_menu( 'my-account'); //ユーザー詳細タブを削除します。 add_action( 'wp_before_admin_bar_render'、 'remove_admin_bar_links');