web-dev-qa-db-ja.com

投稿フォーマットの名前を変更することは可能ですか?

WP 3.1以降、Tumblr-style 投稿フォーマット を使用することが可能になりました。テーマに 'aside'オプションを使用したいのですが、WP管理領域に別のタイトルを付けたいと思います。

したがって、たとえば、ユーザーが投稿を書いているときに、投稿のオプションを「標準」または「クイック」にすることができます。「標準」や「脇」にすることはできません。

コアを変更せずにこれを行うことは可能ですか?それがfunctions.phpなどを介して非常に簡単に行うことができるものであればそれは素晴らしいことです。私は希望に生きています...

ありがとうございます。

7
snthr

これが今のところ唯一の方法だと思います。これをあなたのテーマフォルダの functions.php に入れるか、簡単なプラグインを作成してください:

function rename_post_formats( $safe_text ) {
    if ( $safe_text == 'Aside' )
        return 'Quick';

    return $safe_text;
}
add_filter( 'esc_html', 'rename_post_formats' );

//rename Aside in posts list table
function live_rename_formats() { 
    global $current_screen;

    if ( $current_screen->id == 'edit-post' ) { ?>
        <script type="text/javascript">
        jQuery('document').ready(function() {

            jQuery("span.post-state-format").each(function() { 
                if ( jQuery(this).text() == "Aside" )
                    jQuery(this).text("Quick");             
            });

        });      
        </script>
<?php }
}
add_action('admin_head', 'live_rename_formats');
6
Ján Bočínec

これを行うためのはるかに信頼性の高い(そしてそれほどハッキーではない)方法は次のとおりです。

function rename_post_formats($translation, $text, $context, $domain) {
    $names = array(
        'Audio'  => 'Podcast',
        'Status' => 'Tweet'
    );
    if ($context == 'Post format') {
        $translation = str_replace(array_keys($names), array_values($names), $text);
    }
    return $translation;
}
add_filter('gettext_with_context', 'rename_post_formats', 10, 4);
19
Aaron

投稿フォーマットはWordPressにハードコードされています。変更することはできませんが、JohnnyPeaが指摘しているように、いくつかのトリックを使って既存の名前を隠すことができます。

Chip Bennettは、独自の投稿フォーマットのセットを本当に作成する必要がある場合は、独自のカスタム分類法を設定することをお勧めします。その推奨事項の2番目に強くなります。

しかし、少し考えてみてください。投稿フォーマットは、読者のためにブログの出力をスタイルするのに役立つように設計されています。読者は、それがAsideまたはQuickと呼ばれるかどうかを気にすることなく、投稿コンテンツがどのように提示されるかを気にするだけです。管理者側の投稿フォーマットラベルを自分で変更しようとしているだけの場合は、独自のカスタム分類法を使用してそれを使用してください。

6
EAMann

正しい方法は カスタム分類法を登録する であり、コアのPost Formatをまったく使用しないことです。

4
Chip Bennett

投稿フォーマットをカスタマイズし、投稿エディタページの上部に沿ってタブバーに水平に表示しました。私は彼らの名前をこんな感じでカスタマイズしています。これはかなり複雑で厄介なプロセスですが、チェックアウトしたい場合はGistに貼り付けました。 https://Gist.github.com/dcondrey/059dec0c5b01197c9f11

最終結果は次のようになります。

enter image description here

1
davidcondrey

編集チームやプロセスのニーズに合わせてこれらの投稿フォーマットのタイトルを変更しても問題ありません。名前を変更しないとテーマの機能が正しく表示されなくなります。これらのフォーマットの背後にある考え方は、テーマがサポートされているものを述べることができ、それらだけがエディタに表示されるということです。

@ JohnyPeaのメソッドがテーマ側で何かを壊すことはないだろうと私が言うことができるものから。誰かが@ Aaronの方法を試したことがあるかどうか私は興味があります。もしそうなら、あなたは問題なくテーマを切り替えることができました。

結局のところ、私たちが話していることはこれらを意味論的により編集スタッフにとってより有用にすることであり、私たちが名前変更/同義語だけに興味があるならカスタム投稿タイプはおそらくやり過ぎるでしょう。

0
MikelKing