私は自分の投稿のうちの1つから他の投稿にどのようにリンクするべきか疑問に思います。理想的にはget_permalink()のような関数を使用しますが、投稿コンテンツではphpは使用できません。投稿/ページのスラッグを変更してもリンクが切れないようにするにはどうすればよいでしょうか。
あなたはいくつかの選択肢があります。どちらも投稿IDの使用を伴います。これは変更されないためです。
あなたはhttp://www.example.com/?p=23
の形で醜いURLを使うことができます。ここで?p=23
は投稿のIDです。
投稿IDを受け入れてget_permalink()
を使用してリンクを出力するショートコードを使用できます。
次のショートコードはこのように使用されます。
[postlink id=23]Some link text goes here[/postlink]
そしてこれがその機能です。
function postlink_id_to_slug( $atts, $content = null ) {
extract( shortcode_atts( array(
'id' => ''
), $atts ) );
if ( $id == '' || ! is_numeric( $id ) || $content == null) return false;
return '<a href="' . get_permalink( $id ) . '">' . $content . '</a>';
}
add_shortcode( 'postlink', 'postlink_id_to_slug' );
投稿のIDを検索する 方法はいくつかあります 。 1つの方法は、投稿エディタで投稿を開き、ブラウザのアドレスフィールドのURLでxx
が数値IDであるpost=xx
を見つけることです。
この プラグインはもっと柔軟な方法で同じことをします。