フォーラムへの返信

15件の返信を表示中 - 1 - 15件目 (全304件中)
  • KUCKLU

    (@kuck1u)

    @munyagu さん

    EWWW Image Optimizer使うんですが、自動的に上書きになっている気がするんですが・・・

    すみません。デフォルトで全ての画像が上書きされていますね。
    EWWW Image Optimizer 3.5.1まで「Exclude full-size images from lossy optimization」というオプションがあり、これと勘違いしていました(現在の最新版は3.6.1です)。

    KUCKLU

    (@kuck1u)

    素の画像を残すとはどういった事でしょうか?

    メディアアップロードにアップロードした画像と、EWWW Image Optimizer で圧縮された画像の2つが存在しているということではないでしょうか。

    EWWW Image Optimizer のオプション設定で上書きする設定にしていない場合、EWWW Image Optimizer で圧縮された画像と、メディアアップロードにアップロードした素の画像の2つが存在することになります。この場合、アイキャッチに設定されている画像、記事内で使用さている画像は、圧縮されていない画像を使用している可能性があります。

    • この返信は2 年前に KUCKLU さんが編集しました。
    フォーラム: プラグイン
    返信が含まれるトピック: 定型文を記事ごとに設定したい

    こんにちは @menbou さん

    「無ければ作ってしまえ!」という体育会系な考え方も有りかと思いますよ(笑) ざっと思いついたの以下の仕様です。

    1. 「定型文」という非公開のカスタム投稿タイプを用意する
    2. 投稿・固定ページ・任意の投稿タイプのカスタムフィールドに、「定型文」を選択できるようなセレクトボックやチェックボックスなどを追加し、カスタムフィールドの値に「定型文」の投稿 ID を保存できるよにする
    3. 各投稿データを呼び出す時に、カスタムフィールドの保存値から「定型文」を呼び出して投稿データの下にくっつけて出力するような処理を追加する。the_content フィルターにフックするのがよいかも?

    そんなに難しくはないと思うので、頑張ってみるのもありかと思います。
    @menbou さんが期待している答えではないと思いますが、すみません。

    同じタームに属する記事一覧を表示したい

    とありますが、Advanced Custom Fields でメタデータを追加しているの、カスタムフィールドの値が一致する投稿を取得したいという解釈でよいでしょうか?

    ソースコード
    https://pastebin.com/yKn3k1tV

    使い方
    上記 URL のソースコードを functions.php にペーストし、single.php の好きなところに wpforum218064_recommend_posts(); を追加してください。 ポストタイプなどは環境に合わせて変更してください。

    提案
    このケースの場合、2つに共通するカスタム分類を追加、または既存のカスタム分類の場合は紐づく投稿タイプを変更して wp_query に tax_query 指定するのがよいと思います。

    @mura0403 さん

    functions.phpなどでてきおうしづらいルール的な条件が難しいものについては、SQLをつかうべきなのでしょうか?

    状況は色々とあると思うので “これ!” という回答は難しいですが、少なくとも投稿データを取得するという内容では SQL 文を書く必要はないと思います。wp_query を駆使すれば、取得できないことはないと思います。

    @mura0403 さん

    query_posts 関数の使用は推薦されていません。詳細は以下をご覧ください。

    テンプレートタグ/query posts
    https://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/query_posts

    注 1: この関数はプラグインまたはテーマの中で使われることを想定されていません。後ほど出てくる説明にあるように、メインクエリーを変更するにはパフォーマンス面でも優れたより良いオプションが存在します。

    注 2: query_posts() はページ内のメインクエリーを書き換え、新しいクエリーのインスタンスと置き換えるために使う関数としては過度に単純化され、問題が発生しやすい方法です。非効率的で(SQL クエリを再実行します)、一部の状況では適切に実行することもできません(特にページング処理)。モダンな WordPress コードではもっと安定したメソッドを使うべきです。例えばpre_get_posts フックを使った方法などです。ひとことで言うと、query_posts() は決して使うべきではありません。

    フォーラム: 使い方全般
    返信が含まれるトピック: ユーザーごとのコメントした記事一覧の表示

    [マルチポスト] wordpress:ユーザーごとにコメントをした記事のタイトル一覧を表示したい
    https://teratail.com/questions/61773

    フォーラム: その他
    返信が含まれるトピック: ローカルでのwordpress開発環境 2016年版

    Mac専用且つ自作ですが、PHPビルトインサーバー + WP-CLIのRetort WPというのを使ってます。新規でWordPress環境を構築した場合は30秒くらい、構築済のものを立ち上げる場合2〜5秒くらいで立ち上がるので、なかなかお気に入りです。

    フォーラム: プラグイン
    返信が含まれるトピック: Job manager で他のユーザの投稿を非表示にしたい

    [マルチポスト] http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11164344291

    • この返信は2 年、 11 ヶ月前に KUCKLU さんが編集しました。
    KUCKLU

    (@kuck1u)

    こんにちは、@akira381265 さん。

    WordPressの関数で行うと、以下のようになると思います。投稿の東京というタグが付いた全記事のコメントを取得します。get_posts()関数のパラメータはakira381265さんの環境に合わせて変更してみてください。

    $comments = array();
    $ids      = get_posts( array(
    	'post_type'      => 'post',
    	'tax_query'      => array(
    		array(
    			'taxonomy' => 'post_tag',
    			'terms'    => 'tokyo',
    			'field'    => 'slug',
    		),
    	),
    	'posts_per_page' => -1,
    	'fields'         => 'ids',
    ) );
    
    if ( ! empty( $ids ) ) {
    	$comments = get_comments( array( 'get_comments' => $ids ) );
    }
    • この返信は3 年前に KUCKLU さんが編集しました。理由: 文脈
    • この返信は3 年前に KUCKLU さんが編集しました。
    フォーラム: 使い方全般
    返信が含まれるトピック: wordpressでページネーションが実行出来ません。
    KUCKLU

    (@kuck1u)

    teratailというQ&Aサイトでも同じやりとりをされていらっしゃいます。
    https://teratail.com/users/uverworld101nm#question

    フォーラム: 使い方全般
    返信が含まれるトピック: phpが作動しない
    KUCKLU

    (@kuck1u)

    横槍で失礼いたします。

    teratailというQ&Aサイトでも同じやりとりをされていらっしゃいます。
    https://teratail.com/users/uverworld101nm#question

    KUCKLU

    (@kuck1u)

    @lisa0000 さん

    そこまで、難しく考える必要はないと思いますよ。

    投稿(post)にある”カテゴリー = タクソノミー”で、カテゴリーにお知らせというのを追加した場合、”お知らせ = ターム”という呼び方になります。WordPressの日本語マニュアル的にいうと、”タクソノミー = カスタム分類”になります。ですので、カスタム投稿タイプにカスタム分類を追加したとしても、使用方法は投稿(post)にあるカテゴリーと全く同じです。

    ただ、カテゴリーはビルドイン(予め組み込まれた)のカスタム分類なので、get_category()をはじめとしたAPIが予め用意されていますが、自身でカスタム分類を新たに追加した場合は、get_term()関数やget_terms()関数、get_taxonomy()関数やget_taxonomies()関数を使って自前で取得する必要があるという点です。

    試しに、get_category()関数の中身をみてみましょう。

    function get_category( $category, $output = OBJECT, $filter = 'raw' ) {
    	$category = get_term( $category, 'category', $output, $filter );
    
    	if ( is_wp_error( $category ) )
    		return $category;
    
    	_make_cat_compat( $category );
    
    	return $category;
    }

    これは、get_category()関数のソースコードです。記述されているファイルは、wp-includes/category.phpの90行目辺りです。内部をみてみると、get_term()関数が使用されていて、get_term()関数の第二引数に”category”と直接書かれているのが確認できます。このことから、投稿(post)にあるカテゴリーはcategoryというカスタム分類であるというのが分かります。

    では、投稿(post)にあるカテゴリー(categoryというカスタム分類)がどのようにWordPressのコアで追加されているのかというと、カスタム分類を追加する時に使用する関数と同じregister_taxonomy()関数で追加されています。「うっそだー笑」と思うかもしれませんので、先程と同じくWordPressのコアのソースコードをみてみましょう。

    function create_initial_taxonomies() {
    	//〜中略〜
    	register_taxonomy( 'category', 'post', array(
    		'hierarchical' => true,
    		'query_var' => 'category_name',
    		'rewrite' => $rewrite['category'],
    		'public' => true,
    		'show_ui' => true,
    		'show_admin_column' => true,
    		'_builtin' => true,
    	) );
    	//〜中略〜
    }

    これが投稿(post)にあるカテゴリーを追加している部分です。create_initial_taxonomies()関数は、wp-includes/taxonnomy.phpの24行目あたりに記述されています。ちなみに、initアクションにフックする形で使用されています(他にも使用されている箇所はありますが、今回は気にしないでください)。

    ここまで、小難しい説明をしてみましたが、実際に追加して動かしてみるのが1番理解が早いと思います。結論として、@lisa0000 さんがやりたいことは、カスタム投稿タイプにカスタム分類を追加すれば可能です。例えば、レシピという投稿タイプに、ジャンルというカスタム分類を追加して、ジャンルに中華を追加して、レシピの記事を中華に紐付ければ、中華の記事一覧を表示できるようになります。

    どのテーマファイルが使われるかは、WordPress Codexのテンプレート階層をご覧ください。面倒臭い!という場合は、archive.phpがあれば大丈夫です笑

    なにか、詳しい情報が掲載されているページなど、参考になるものが御座いましたら教えて頂けないでしょうか。

    公式のドキュメント”WordPress Codex”を読むのが1番正確だと思います。その上で他の人のブログを参考にするのがいいのではないかと思います。

    カスタム分類 – WordPress Codex 日本語版
    https://goo.gl/F35nB5

    注意事項: 上記の説明の中で、WordPressのコアファイルのソースコードを引用していますが、コアファイルは絶対に改変したりしないようにしてください。

    • この返信は3 年前に KUCKLU さんが編集しました。
    KUCKLU

    (@kuck1u)

    こんにちは、@lisa0000 さん。

    投稿(post)にあるカテゴリーとタグはタクソノミーになります。カテゴリーに中華というのを追加した場合、中華はタームになります。つまり…

    タクソノミー: カテゴリー
    ターム: 中華

    という感じです。カテゴリーとタグは、使用する投稿タイプを投稿(post)に紐付けているというだけです。なので、一手間加えれば、投稿のカテゴリーとタグをカスタム投稿タイプで共通で使用することもできます。

    ところで @lisa0000 さんは、投稿(post)のカテゴリーとタグをカスタム投稿タイプのレシピでも共通で使いたいのでしょうか?それとも、投稿(post)のカテゴリーとタグとは別で、レシピはレシピでカテゴリーやタグを使用したのでしょうか?

    KUCKLU

    (@kuck1u)

    @kenkurihara さん

    ◎結果: /ドメイン名/サブディレクトリ名/news/ブログの任意のカテゴリ名(IDが最も若いカテゴリ)/ポスト名[日本語]

    この部分は再現できないので何とも言えないのが、すくなくともBizVektor Hackが影響しているわけではなく、別の何かだと思います。例えば、他のプラグインやカスタマイズしたテーマなど。原因の特定方法として、以下になると思います。

    1. BizVektor Hack、Custom Post Type Permalinks、WP Multibyte Patch以外のプラグインを無効化する
    2. テーマをカスタマイズしていないノーマルなBizVektorにする

    1で現象が解消した場合は、どれかのプラグインが影響しているので、1つ1つ有効化していって、現象が発生するプラグインを特定。1で解消しない場合は、2を試す。

    • この返信は3 年前に KUCKLU さんが編集しました。
15件の返信を表示中 - 1 - 15件目 (全304件中)