【WordPress PHP】記事URLを抽出する方法



当サイトの特定のカテゴリーを別ドメインへリダイレクトするため、記事URLを抽出しました。

kaoleft
プラグインExport All URLsも便利かと

PHPファイルを作成

エディタに次のコードをコピペします(メモ帳は使いません)。

<?php
$categories = get_categories('parent=0');
foreach($categories as $category) :
echo '<h2>' . $category->cat_name . '</h2><ul>';
query_posts('showposts=1000&cat=' . $category->cat_ID);
while(have_posts()) :
the_post();
echo '<li><a href="' . get_the_permalink() . '">' . get_the_title() . '</a></li>';
endwhile;
wp_reset_query();
echo '</ul>';
endforeach;
?>

サクラエディタインストール方法

「ファイル→名前を付けて保存」をクリックし、ファイル名を「好みの文字列.php」にして「保存」をクリックします。保存する場所はデスクトップが便利。

PHPファイルが完成!

FTPでPHPを子テーマに配置

【例】Cocoonの場合

/public_html/wp-content/themes/cocoon-child-master

サーバーのファイルマネージャーでPHPファイルを配置してもOKです。

【FTPソフト】FileZillaのインストール&接続方法

子テーマのfunctions.phpにコードをコピペ

//PHPショートコードを使う
function my_php_Include($params = array()) {
extract(shortcode_atts(array('file' => 'default'), $params));
ob_start();
include(STYLESHEETPATH . "/$file.php");
return ob_get_clean();
}
add_shortcode('test_php', 'my_php_Include');

プレビュー

記事を「新規」で開いたら、次のように入力し「プレビュー」をクリック。

[test_php file='test']

カテゴリ毎ずらずらとリンク付きURLが表示されました。

もし作成したPHPが間違っている場合は、エラーが表示されますのでPHPを直せば表示されます。

URLを抽出

プレビュー画面の空いているスペースで「右クリック→ページのソース」を開き、URLが含まれている部分をコピーし、URL抽出ツールを使ってURLのみ取り出します。

今回は「エーエイチレフ」のツールを利用しました。コピーした文面を貼り付けたら下の方にある「抽出」ボタンをクリックするとURLが抽出されます。その数595件!。尚、1番上に表示されているURLは手違いにより異なるアドレスですので省きました。

後書き

脆弱性を避けるため、URL の抽出が終わったら作成した PHP は必ず削除しておきます。

もう少し効率の良い方法もあると思いますが、当サイトではこの程度しかできませんでした。

参照:テンプレートタグ/get the category – WordPress Codex 日本語版

URLをエクセルに貼り付けて抽出

【WordPress MySQL】記事URLを抽出する方法