Twitterボタンを設置する

今回は共有ボタン(シェアボタン)を作る。

https://publish.twitter.com/#

ボタン作成の公式サイトを利用する。
元は英文のようだがChromeで翻訳して問題は生じなかった。

Twitterボタンを選択。
共有ボタンを選択。
「カスタマイズオプションを設定する。(set customization options)」のリンクをクリック。
そのページでボタンをカスタマイズできる。

カスタマイズの一例。

自分に通知させる

誰かがツイートした時に、自分に通知させる事ができる。
「スクリーンネームを含める」のボックスにスクリーンネームを記入。
スクリーンネームとは「@~」のようなユーザー名の事。
パラメータは、data-via。

フォローを促す

ツイートした人に、フォローも薦めてくれる。
「アカウントを推薦」のボックスにスクリーンネームを記入。
パラメータは、data-related

コードをペーストする場所

決定するとコードが表示されるのでコピーし任意の場所にペースト(貼り付け)します。
WordPressで個別記事に該当する場所にペーストする。
場所はcontent-single.php。「template-parts」→「content-single.php」。

クォーテーション等が自動変換される件

WordPressで記事投稿する際、半角ダブルクォーテーション(")は全角()に変換される。
その他、シングルクォーテーションなどを、勝手に自動変換して表示される。

"a"」→「“a”
'b'」→「‘b’
<!--comment-->」→「<!–comment–>

この自動変換機能は、コード等の説明をする際には迷惑な機能だ。

自動変換する理由

自動変換機能が何故ついているのかは不明だ。
セキュリティ上の配慮かとも考えたが、英語圏でも利用されるから、その可能性は低そうだ。
という事で、この機能はストップさせた方がよさそうだ。

自動変換機能を停止する方法

加筆する場所はfunctions.php。
末尾にでも、以下のように追加すればよい。

// 自動変換停止
add_filter('run_wptexturize' , '__return_false');

codeタグで回避

このクォーテーション等を自動変換する機能は、codeタグまたはpreタグで括る事によっても回避が可能だ。
テーマ更新等でファイル書き換えを余儀なくされる事もあろうから、codeタグ等を適宜利用する習慣を持ったほうがいい。

この自動変換機能を知らなかった方は全角クォーテーション等が使われていないかチェックした方がいい。
WordPressの検索機能で調べることができる。
ちなみに全角クォーテーションは、ダブルとシングル、左と右、計4種類ある。

検索結果を全文表示・抜粋表示

検索結果を全文表示・抜粋表示を編集して変更する。

場所

修正場所を考えてみる。
検索結果を表示させるのは、search.phpのようだ。
そのsearch.phpにある、get_template_part関数が修正すべき場所を指定している。

get_template_part( 'template-parts/content', 'search' );

このコードの意味は、「template-parts/content-search.php」が存在すれば「template-parts/content-search.php」、なければ「template-parts/content.php」が該当場所である、という意味だと思われる。

the_contentとthe_excerpt

the_content関数が全文表示、the_excerpt関数が抜粋表示。

ここからは実際の編集だが、ある程度はソースを読む必要がある。
今回は抜粋表示から全文表示に変更する。
「the_excerpt」を検索したが二箇所ある。どちらを修正すべきか。

if ( is_search() ) ~

これは「検索ページなら」という条件文。
この「if」範囲内に、「the_excerpt」は一つのみ存在を確認された。
そのthe_excerptを修正すればよい。

 

<?php the_excerpt(); ?>

以下のように修正した。

<?php //全文表示に the_excerpt(); ?>
<?php the_content(); //全文表示に ?>

以上です。

コメント投稿のウェブサイト欄を消してみた

コメント投稿のウェブサイト投稿欄を消すのに挑戦した際の備忘録です。

でも現在は、コメント投稿フォームのカスタマイズはしない事にしました。
アラシ対策が面倒という事で、コメント自体を受けつけないことにした。

というわけなので、参考程度に読んでね。

CSSによる方法もある。
CSSで非表示

編集場所はどこか

今回はadd_filterによるカスタマイズ。
これは、通常はfunctions.phpに追加するのが普通ということでしょうか。
comments.phpとか探す必要はないということですね。

当方ではfunctions.phpに追加して、動作しました。

編集の全文

実際に当サイトで使ってみた全文を、まずは示します

add_filter('comment_form_default_fields' , function($arg){
$arg['url'] = '';
return $arg;
});
add_filter('comment_form_defaults' , function($arg){
$arg['comment_notes_before'] = '<p class="comment-notes"><span id="email-notes">'
. 'メアド入力は任意です。表示されません。'
. '</span></p>';
return $arg;
});

前半の数行

add_filter('comment_form_default_fields' , function($arg){
$arg['url'] = '';
return $arg;
});

'url'の部分が、ウェブサイト投稿欄を指定している。
さらにメールアドレス投稿欄も削除する場合、$arg['email'] = '';の一文を加える。
つまり変更したいものだけを指定すればいい。

途中からfunction定義に移っていく。
無名関数を使う。
関数名を定義すると外部に干渉することがあると聞いた。
それで関数名を指定しない方法をとりました。

function ($arg) とあります。()の中、つまり引数は省略不可。

後半の数行

add_filter('comment_form_defaults' , function($arg){
$arg['comment_notes_before'] = '<p class="comment-notes"><span id="email-notes">'
. 'メアド入力は任意です。表示されません。'
. '</span></p>';
return $arg;
});

外に影響しないので、変数名は同じもの(今回はarg)を使ってよい。

メアドに関する注意書きの文を変更する。
この指定内容はHTMLタグを含む。

「メールアドレスが公開されることはありません。」が初期値。
好みの文に変更する。

メールを任意とする場合

メールを任意とする場合は、管理画面からその設定をする。
またCSSで、displayがnoneになってないか確認する。

新規設定の手順

わかっている部分だけ。

  1. すべてnoindex設定。
  2. 一旦はコメントオフ設定。
    メールを必須にするか。
    アバター表示設定オフ。
  3. 乗っ取り対策。
  4. パーマリンク設定。
  5. All in One SEO Pack。
  6. テーマ選択。
  7. ウィジェットなど設置。
  8. noarchiveを二重に設定。

最後にnoindex設定を外す。

前の記事・次の記事をなくす

WordPressでは一つの記事の下に、前の記事のリンクとかつく。
これを消すにはどうするか。

編集場所はどこか

single.phpのthe_post_navigation()関数が該当するようだ。

消し方

近辺をざっくりコメントアウト。
()やセミコロンの位置に注意。

/* コメントアウト the_post_navigation()
the_post_navigation( array(

) );
*/