WPMLサポートフォーラムでこれについて何か知っていますが、ここでも質問できると思いました。重要な情報は次のとおりです。私は、カスタム投稿タイプ、カスタムフィールド、見た目すべてをカスタマイズしたWPマルチサイトセットアップを実行しています。特定のテンプレートファイルで、別のブログからアイテムのリストを取得する二次ループがあります。私が収集したものから、WP APIを使用するものはすべて、現在の言語のみにフィルタリングする必要がありますが、WP_Query()
私が持っている機能はどれもそうしていません。
関連コード:
<?php
switch_to_blog(23);
$args = array('post_type' => 'release-notes',
'suppress_filters' => 0,
'meta_query' => array(
array(
'key' => 'related_products',
'value' => $thisproduct,
'compare' => 'LIKE'
)
)
);
$loop = new WP_Query($args);
if ($loop->have_posts()) {
echo '<h2>Release Notes</h2>';
while ( $loop->have_posts() ) : $loop->the_post();
//echo '<pre>';
//print_r($post);
//echo '</pre>';
$post_link = ($post->post_name);
echo '<p><a class="text-link" href="' . get_permalink() . '">' . get_the_title() . '</a></p>';
endwhile; // foreach($posts
} // if ($results
restore_current_blog();
?>
ここでの問題は2つあります。1つ目は、現在の言語ではなくすべての言語からの結果を返すことです-同じ投稿を3回(EN、FR、DE)。第二に、からの結果get_permalink()
は完全に間違っています -http ://www.mysite.com/blog23name/lang/posttype/postnameの代わりにhttp://www.mysite.com/blog23name/postnameを吐き出しています -カスタムパーマリンクが「投稿の編集」ページ。
何か案は?
1
IMO、ここでプレミアムプラグインの質問をするのは公平ではありません...
—
brasofilo
"公平ではない"?どのように?ここで質問できないのに、なぜWPMLのタグがあるのでしょうか?もう一度、FAQを確認してください。これはGPL(プレミアムバージョンも含む)に基づいてライセンスされているため、技術的には、トラブルシューティングのために他の人が参照できるように、関連するコードチャンクを投稿できました。とは言っても、問題の少なくとも1つはWordPressの主要な問題であり、
—
SickHippie
switch_to_blog()
カスタム投稿タイプのパーマリンクが渡されないためget_permalink()
、これについて質問するのに最適です。しかし、反対票をありがとう、それは実際に2か月前の質問に対する答えを思いつくよりもはるかに役立ちます。
「無料版」はありますか?彼らがそうした場合、申し訳ありませんが、私は気づいていませんでした...知らない場合、タグがあってもGPLの言い訳にはなりません...
—
brasofilo
はい、ダウン投票する前にメタに持っていたはずですが、元に戻すことはできません。@Bainternet、ありがとうございました。SickHippie、フォーラムでまだ回答が得られていないようです。古き良き質問を修正しながら、この質問につまずいて賛成してください。よろしくお願いします。間違いをお詫びします。
—
ブラソフィロ2012年
@brasofilo-心配しないで、仲間。昨日は少しストレスがたまっており、攻撃的な態度をお詫びします。それは要求されなかった、と私は非常に申し訳ありません。
—
SickHippie