Twitterカードを設定してみた

Twitterカードでヴィジュアル化すれば、クリック率が上がる。
Twitterアカウントを予め作っておく。

今回は、プラグイン「All in One SEO Pack」の使用を前提とする。
「All in One SEO Pack」→「機能管理」。
「ソーシャルメディア」で、Activateと表示されているならクリックする。
結果的には、Deactivateと表示変更させる。

「All in One SEO Pack」→「機能管理」→「ソーシャルメディア」。
当サイトではTwitterボタンはコードを直接入力している。
今回の各設定もそれが前提です。

ホームページ設定

「AIOSEOのTitleとDescriptionを使用する」のチェックを任意で選択。
今回はチェックを入れた。

その他の設定は入力しなかった。説明も割愛します。

Twitterプロフィール画像をTwitterカードに使用

次は「画像設定」です。
記事ごとに画像を用意するのが面倒なのでTwitterプロフィール画像をデフォルトにする事にした。
Twitterでアップした画像を、WordPressにもアップする。

  • 「デフォルトのOG:Image」のボタンをクリックして画像をアップする。
    成功すれば、ボックスにアップされた画像のurlが表示されます。
  • 「画像が見つからない場合はデフォルトを使用」にチェックを入れる。
  • 一番上の「OG:Imageソースを選択」だが、セレクトボックスが英語表示だった。
    Chromeでページごと翻訳する。
    今回は「コンテンツ内の最初のイメージ(First Image in Content)」を選択した。

その他の設定は入力しなかった。説明も割愛します。

Twitter設定

「デフォルトTwitterカード」は「要約」を選択。
Twitterプロフィール画像をデフォルトに設定したので、小さめの「要約」にした。

当サイトではTwitterボタンはコードを直接入力している。
その他の設定は入力しなかった。説明も割愛します。

Card validator で確認する

確認用サイトへ移動する。
Card Validator | Twitter Developers

任意の個別ページのurlを入力し、プレビューを確認して終了。
プレビュー反映に時間がかかる場合があるようだ。

他の方法はあるか(余談)

プラグイン「Twitter」は、Twitterが提供するプラグイン。
プラグイン「Twitter」でも「Twitterカード」が利用できるようだが、「All in One SEO Pack」の「ソーシャルメディア」の方がはるかにわかりやすい。
プラグインの「Twitter」と「ソーシャルメディア」の併用は、現時点では問題がないように見える。
プラグインの「Twitter」は、埋め込みツイートのカスタマイズ目的で導入しているが、将来は使用しないかもしれない。

Twitterボタンを設置する

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

https://publish.twitter.com/#

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

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

カスタマイズの一例。

自分に通知させる

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

フォローを促す

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

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

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

robots.txt ざっくり手順

robots.txtをGoogleに登録する手順。
すぐにGooglebot等がrobots.txtを認識しない場合がある。

robots.txt テスター

「Search Console」でまず該当サイトを開く。
「クロール」→「robots.txt テスター」。
まずは、公開済みのrobots.txtを表示し、その内容を確認する。
その「公開済みのrobots.txtのページ」は、チェックの度にブラウザ更新が必要。

robots.txtの編集等が必要であることを確認して、新規にrobots.txtを作成しアップする。
上の要領で、ファイルアップ成功をチェック。

「robots.txt テスター」の送信。
3番の「Googleに更新をリクエスト」を送信。
Googlebot等が、新規robots.txtの認識に成功すれば、「robots.txt テスター」のテキストエリアに反映される。

xmlサイトマップ登録

xmlサイトマップのurlをrobots.txtの末尾に記入する。
そのurl記述の上に空行を一行、入れねばならない。

Sitemap: https://~/sitemap.xml

しかし、xmlサイトマップの登録は別に必要なようだ。
「Search Console」で登録可能なので、ついでに登録しておこう。

No Category Base (WPML) 使わなくなった理由

現在は使用していない。

categoryをurlから消すプラグイン

No Category Base (WPML)。
通常カテゴリーページは「https://~.com/category/ai/」のようにcategoryの文字が入る。
このcategoryを消して「https://~.com/ai/」のように表示する。
このプラグインを使わないことにした。

プラグインを外すと個別記事が404

このプラグインを外したら個別記事が表示されなくなった。
あせったね。やられたーですよ。
でも対処方法はあって、WordPressの基本設定により修復できる。

設定→パーマリンク設定。
特に変更の必要はなく、そのままの状態で「変更を保存」をクリック。
これでOK、表示されるようになる。

理由

使わないことにした理由。

  • urlにcategoryの文字が入ってもSEOには、ほとんんど影響しないと体感的に判断した。
  • 検索時にcategoryを加えることでカテゴリーの登録状況を簡単に把握できるというメリットもある。
  • バグあるいは他への影響などの報告が、ネット上に少し見られる。
  • url構造を根本的に変換するので、想定しないバグが生じる可能性が将来的にもありうると思った。

WordPress Popular Posts 久しぶりに再設定

記事をランキング表示してくれるプラグイン。

とりあえず以下のサイトを参考にして設定した。
https://hisagawanet01.com/wordpress-popular-posts/

ウィジェットでの設定

外観→ウィジェット。

投稿タイプ?
調査中。

カテゴリーを除外することができる。
カテゴリーIDの前に半角マイナス記号(-)を加える。
カンマ(,)で区切る。
-123,-456,-789

ID指定のurlでリンクする方法

すでに設定されているIDが、記事またはカテゴリーとして機能しているか。
つまりリンク先が削除されていないか。

投稿ページIDの一例。
https://grewja.com/?p=4398

カテゴリーIDの一例。
https://grewja.com/?cat=46

参考。
http://wpdocs.osdn.jp/%E6%8A%95%E7%A8%BF%E3%80%81%E5%9B%BA%E5%AE%9A%E3%83%9A%E3%83%BC%E3%82%B8%E3%80%81%E3%82%AB%E3%83%86%E3%82%B4%E3%83%AA%E3%83%BC%E3%81%B8%E3%81%AE%E3%83%AA%E3%83%B3%E3%82%AF

FFFTP 文字コードの設定

WordPressでファイルを直接編集しアップする作業が必要になった。
FFFTPで、文字コードの設定を行った。
文字化けや停止を避ける目的。

環境はWindows。
編集にはTeraPadを使用し、メモ帳は使用しないことを前提にする。

設定

「ローカルの漢字コードの設定」を行う。
オプション→環境設定→転送4。
UTF-8(BOMなしの方)にした。

「ホストの漢字コードの設定」を行う。
ホストを選び、ホストの設定→文字コード。
ホストの漢字コードは無変換にした。
ファイル名の漢字コードはUTF-8にした。

追記

TeraPadで編集しアップしたが問題は生じなかった。
TeraPadでの文字コードの選択には注意が必要です。

今回は、理由付けなどの説明はしません。
結果オーライ、あとは自己責任でよろしく。

初めてのサーバ移転で画像紛失

WPXレンタルサーバ使ってたけど、高いのでWPXクラウドに引越しすることにした。
サーバ移転は初体験。

バックアップデータを取得しとけば、ひどい目には合わないだろうと思ったら甘かった。

.htaccessファイル?
未だに使ったことないので無視することにした。

問題は、wp-contentフォルダのダウンロード。
これを省略してはいけなかった。
画像ファイルとプラグインを失ったようだ

そこだけ注意して。
以上、超初心者向け情報でした。

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

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

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

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

自動変換する理由

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

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

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

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

codeタグで回避

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

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

Revision Control 続き番号にする

現在は使用していない。
当方ではプラグインを使用せず、直接編集する方法を採択した。

 

探し方

WordPress内で検索すればよい。
プラグインで、似たような名前のものがあるので注意。

作者名は、「Dion Hulse」。
プラグイン名と作者名を並べて検索した。
「Revision Control Dion Hulse」。

設定

各項目で「投稿リビジョンを保存しない」を選択するだけ。
あとはセーブ保存するだけ。

Optimize Database after Deleting Revisions

WordPressのデータベースの最適化およびリビジョンの削除を行う。
軽量化した分、表示が早くなるらしい。

英語なので、設定項目の意味がわかりにくい。
以下のサイトを参考にした。
https://chucco.com/wordpress-revision/

設定

ざっくり説明。自己責任で。

上半分の設定。

  • postチェック。pageチェック。
  • Delete revisions older than。
    ゼロ設定。
  • Maximum number of - most recent - revisions to keep per post / page
    リビジョンを残す数。ゼロ設定。
  • Delete transients。
    初期設定「DELETE EXPIRED TRANSIENTS」がいいかも。
  • Optimize InnoDB tables too。
    チェック。
  • Keep a log。
    チェックなし。
  • Scheduler。
    NOT SCHEDULED。
    事前にバックアップをとるべき。
  • 他の項目はチェックなし。

下半分の設定は、初期設定のままノーチェックにした。
「Save Setteings」で保存。

実行

事前にバックアップをとるべき。
「Go To Optimizer」→「Start Optimization」で実行。

Search Everything

現在は使用していない。

Search Everything

カスタムフィールドを検索できるということでインストールした。
カスタムフィールドの検索自体はできる。
キーは対象外で、値を検索する。

キーワードをハイライトするとのことだったが、したりしなかったりするのはなぜ?
わざわざ全文表示に変えたのに。
この辺は後日の調査課題としよう。

「カテゴリー名を検索」をオンにしたところ、WordPess標準の投稿一覧での検索機能に問題が生じた。
カテゴリー指定し、ボタンクリックで検索したところ何も表示されない。
プラグイン「Batch Cat」においても同様の結果となった。

つまりWordPess標準の検索機能に働きかけると見られ、誤動作の原因となりうる。
結論から言うと日頃はオフまたは停止しておいたほうがよさそうにみえる。

検索機能のカスタマイズって結構難しいのか?
「WP Custom Fields Search」。これは使用したことないが評判が悪いような気がする。
でも使ったことないんでね、実際にはわかりません。

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

検索結果を全文表示を抜粋表示を編集によって変更する。
テーマによって異なるかもしれない。

場所

修正場所を考えてみる。
検索結果を表示させるのは、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(); //全文表示に ?>

以上です。

Batch Cat カテゴリーを一括して外す

日頃はオフでもよい。

使い方

「設定」で表示件数を多めにしておく。
「ツール」から実際のカテゴリー操作を行う。

下段にボタンがあり、「Set」は移動、「Add」は追加、「Drop」は削除(カテゴリーから外す)。
「Add」機能に関しては、WordPress標準機能として存在するため使用しないものと考えてもいい。

セレクトボックスでカテゴリーを選択し「Search」ボタンをクリック。
対象記事にチェックを入れる。
カテゴリー一覧から、はずしたいカテゴリーを選びチェックを入れる。
「Drop」ボタンを押します。

authorリンクをテキストに

記事タイトル直下にある、header内のauthorリンク部分のカスタマイズ。
つまり、著者別記事のリンクを、リンクなしの著者名テキストに変更する。

編集場所はどこか

個別記事のheader表示は、content-single.php。
sparkling_posted_onというテーマ独自関数。

sparkling_posted_on関数が定義されている場所は、template-tags.php。

構造化が関係している

<a class="url fn n" href="https://~">著者名</a>

上記のように表示されているものを、次のように変更したいわけだ。

<a class="fn n">著者名</a>

"url fn n"は構造化データと関係あるようだ。
href以下を削除すればテキスト化される。
それに伴い、"url"の文字指定は削除しておく。
結果的に、class="fn n"となる。

編集方法

template-tags.phpを開く。

sprintf関数が使われている。
sprintfでフォーマットして、printfで出力する、ということだろう。

sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s">%2$s</a></span>',

今回は次のように変更することにした。

/* sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s">%2$s</a></span>', */
sprintf( '<span class="author vcard"><a class="fn n">%2$s</a></span>',

未使用 後日の宿題

関数が定義済みかどうか

if (function_exists( 'sparkling_posted_on' )) {~;}

多次元配列のソート

多次元配列の定義、よくわからない。
番号が振ってないということかな?
配列の配列であるいうことは間違いなさそうだ。

2次元配列と3次元配列の違いは、配列の中にある配列の要素数??が2と3の違い。
用語がよく分からん。
あとで調べておきます。

array_multisort()というのがソートできて便利らしい。

フロントページのh1タグの消去

現時点の当サイトでは、固定ページはフロントページ(トップページ)にしか使用していない。

フロントは通常、ページタイトルはサイトタイトルと同じだ。
この場合、h1タグはタイトルと同じにする必要はない。
フロントのh1は通常と違い、うまい使い方もできそうだ、ということだ。
Wordpressのデフォルトのレイアウトだと何かと融通がきかないので、h1を一旦消去する。

構造化エラーが出ないように下準備

あらかじめhentryを消去しておく。
後日詳細。

編集場所はどこか

当サイトでは、content-page.phpが固定ページに該当するようである。

方法

<header><h1></h1></header>を、
<!--<header><h1></h1></header>-->というように、
HTMLコメントアウトすればいいと思う。

コメントアウトは入れ子にできないので範囲指定は厳密に。
他のコメントアウトを含まないように注意する。

ページタイトルの入力欄には、念のため全角スペース一文字を入力した。

フッターリンク

フッターリンク

テーマ提供者のリンク。
footer.phpを開く。
以下のようにコメントアウト。

<?php //echo of_get_option( 'custom_footer_text', 'sparkling' ); ?>
<?php //sparkling_footer_info(); ?>

sparkling_footer_infoはextras.phpで定義されていて、詳細に設定することも可能。

Breadcrumb NavXT

「Breadcrumb NavXT」はパンくずリストで構造化を促すプラグイン。

インストールするだけではだめで、テーマ編集から、コードを直接記入しないと動作しない。
記入コードですが、設定→ヘルプ→クイックスタートと進めば、記入例が載っています。
例えば以下のように書きます。

<!--Breadcrumb NavXT-->
<div class="breadcrumbs" typeof="BreadcrumbList" vocab="http://schema.org/">
<?php if (function_exists('bcn_display')) {bcn_display();} ?>
</div>
<!--Breadcrumb NavXT--><!--end-->

個別記事への記入場所

個別記事に記入しないと、話にならないです。
自分は先頭ではなく、試しに記事の末尾に記入することにしました。
となると個別記事本文を扱う場所を探さねばなりません。

場所はcontent-single.php。「template-parts」→「content-single.php」。

カテゴリーなどへの記入場所

カテゴリー記事へは記入することも可能。
例えばタイトルと本文の間、つまり閉じたheaderタグの次に記入。

当方では、archive.phpが該当する。

未確認な記述法

一行コメント

<?php //コメント ?>
この記述はあり。解決。

ifと一文

<?php if (true) hoge(); ?>
一文なら{}は不要。解決。
もちろん付してもいい。

ファイル末尾は省略できる?

<?php
~

これで終了して、?>で閉じてないのを見かけたんだが。
ファイル末尾だと省略していいのかな?

endif

endifを含まない

基本形。

<?php
if (~) {~;}
?>

endif必須

例えば以下のように{}を使わない書き方がある。
{}を使わない場合は、endifが必須だと思う。
endifで条件文は終了だけど、その後に続けて記入しても当然に構わない。

<?php if (~) : ?>
「この部分にHTMLソースを記述できる。echoなしで出力される。」
<?php endif; echo 'hello'; ?>