フォーラム

[解決済み] wordpressによるサイト構築で必要なスキル (24 件の投稿)

  1. narumi
    メンバー
    3 years前の投稿 #

    最近はじめてwordpressをいじり始めました。
    MTは理解しているので、テンプレートの作り方などスムーズに入れましたが、
    やはり完全新規のデザインに当て込む作業は、「wordpressのタグを知っている」だけでは厳しい感じでした。
    ↑合っていますか?

    MTに比べ、デフォルトで実装されている機能は少ない反面、多くを豊富なプラグインで補っている印象でした。
    それは構わないんですが、プラグインで表現できないデザイン調整などは、
    直にプラグインファイル自体をいじらないといけないケースが多いように思えます。
    つまり、MTだとプラグインの中身(peal)は書けなくてもなんとかなるのですが、
    wordpressの場合、phpの理解とphpによるコードの読み書きが必要そうだと感じています。
    ↑合っていますか?

    とはいえ、phpをどこまでやればいいものなのか、ちょっと悩んでいます。
    phpだけで参考書籍が何冊もでていますが、
    wordpressによるサイト構築にそのスキルがすべて必要なわけではないと思います。
    ↑合っていますか?

    どのあたりまで、という線引きは難しいと思いますが、
    参考になる書籍やサイトなどアドバイスいただきたく、
    よろしくお願いします。

  2. kannomonooki
    メンバー
    3 years前の投稿 #

    何をしたいのかが明確にならない限り誰にも答えることは出来ませんよ・・・

    壁にぶち当たったらその都度聞く感じでやればいいと思いますが・・・

    デザインのことだけを言えば
    CSSとHTMLがわかっていれば
    それなりにいじれると思うのですが・・・

    何が出来ないのでしょうか?

  3. narumi
    メンバー
    3 years前の投稿 #

    ありがとうござます。
    まとまりのない文章ですみません。。。

    要はphpで詰まっています。
    いわゆる「最近のコメント」を表示したく、プラグインを導入したのですが、
    このプラグインが吐き出すhtmlでは、思い通りの形(デザイン)にすることができませんでした。
    よって、プラグインのファイル自体を書き換えて、任意のソースで吐き出されるようにトライしたところ、
    やはりphpのスキルが必須ではないかと思い、phpを勉強するにあたり、
    どの程度まで知っておく必要があるのか知りたいと思いました。

    とはいえ、プラグインファイルに書かれている内容がphpの難易度的に高いものなのか、
    比較的容易なのかも判別できないので、参考になるサイトや文献も判別できない、
    といった感じです。

    上記を踏まえて2点ご質問させてください。
    ・こういうケースではプラグインファイル自体を編集するのが、スタンダードと考えてよいでしょうか。
    ・プラグインファイルを編集するにあたり、参考になるサイトや文献がございましたら、アドバイス願います。

  4. IKEDA Yuriko
    常連回答者
    3 years前の投稿 #

    ・こういうケースではプラグインファイル自体を編集するのが、スタンダードと考えてよいでしょうか

    プラグインの出力をいじりたいなら、そうなりますね。
    でも、「他のプラグインを探す」のが、よりスタンダードに近いと思います。いまや「最近のコメント」を出せるウィジェットが標準装備されているため、プラグインでそういう表示を出すものは「実装が古い」部類に属します。したがって、そういうのは、あまり使わない方がよいです。

    ただし、ウィジェットの出力が気にいらない場合は、ウィジェットの中身をいじるのは好ましくありません。標準のウィジェットのコードを複製して、似た動作をする別のウィジェットを作る方がよいでしょう。

    この場合は、当然ながら、PHP および WordPress におけるウィジェット作成の知識が必要となります。

    正直なところ、WordPress のカスタマイズをやるんだったら、PHP の知識は必須になるでしょうね。テーマをいじる程度ならば必要ではないですが、テンプレートファイルは実質 PHP コードなので、PHP を理解していた方が無難です。

    プラグインファイルを編集するにあたり、参考になるサイトや文献がございましたら、アドバイス願います。

    WordPress のプラグイン開発に関する書籍はまだありません。ウェブの情報は、わたしが Codex の翻訳をすすめている最中です。「プラグイン・リソース」から情報を辿ってみてください。

  5. narumi
    メンバー
    3 years前の投稿 #

    ご丁寧なレスありがとうございます。

    > 標準のウィジェットのコードを複製して、似た動作をする別のウィジェットを作る方がよい

    こういう進め方を知りたかったので、為になります。
    とはいえ、phpのスキルが軽薄で実際にいじれるレベルではないので、なんだか厳しいそうな印象です。

    > WordPress のカスタマイズをやるんだったら、PHP の知識は必須になる
    やはりそうですか。
    phpを知らない人間はどうやってやっているのかも気になる点だったので解消できました。

    テーマの切り替えがとても容易なので、カスタマイズも簡単にできそうな第一印象でしたが、
    テーマの切り替えだけでは実際の仕事では対応しきれないケースが多いでしょうし、
    カスタマイズにphp必須となるとphp素人の私にはちょっと敷居が高くなりますね。

    最後に一点だけ。

    プラグイン開発というよりも、デザインに当て込む際に任意のソースコードで吐き出したい、
    という欲があるんですが、この場合はphp入門みたいな本を見ておけば、なんとかなるものでしょうか。
    一般的に入門レベルでできるものじゃないということであえば、
    私のとってカスタマイズするのはかなり困難なので、ご意見をいただきたくお願い申し上げます。

  6. eojareth
    メンバー
    3 years前の投稿 #

    WordPressを使って3年になりますが、PHPを覚える気すらありません(^^;;
    それでも、単に指定箇所にHTMLを吐く程度のプラグインや自作テーマなら個人的に書いて使っています

    私が使い始めた時のことを言うと
    HTMLとCSSで手でホームページ等を書いたことがあるのであれば、
    まずは、テーマ用のPHPファイルとにらめっこして、HTML部分だけをいじってみてどう変化するかを遊びながら見て、その前後にあるPHPの関数やら、wordpressで定義された関数やテンプレートタグをこcodexや、googleしていったりすれば、よいかもしれません。
    プラグインがつくりたいのに、なんでテーマをと思うかもしれませんが、テーマ用のファイルだってPHPのファイルなので徐々に繋がっていくと思います。

  7. narumi
    メンバー
    3 years前の投稿 #

    為になるご助言ありがとうございます。

    > PHPを覚える気すらありません(^^;;
    知らなくてもできるなんてすごいですね。。。
    うらやましい。

    > テーマ用のPHPファイルとにらめっこして、HTML部分だけをいじってみてどう変化するかを遊びながら見て
    今の私のやっていることといっしょでちょっと安心です。
    ただ、仕事となると納期もありますし、わけもわからずにらめっこして冷や汗かくのもちょっと恐いです。。
    実際にやってみてはいるのですが、
    裏付けるスキルがないので、かなり時間がかかりますし、建設的でないというか、安心できないというか。。。

    今の状態の不安を打ち消してくれるサイト様や参考書でもあれば、うれしいんですけどね。。。
    そんな都合良く無いですかね?

  8. Toru
    メンバー
    3 years前の投稿 #

    テーマの中には独自の機能が付け加えられた物が結構あります。プラグインを用いたり、そのコードを取り込んで実現している物もあれば、テーマ作者が独自に書いたコードで実装していたりします。それらを見るのは結構勉強になりますよ。

    いわゆる「最近のコメント」を表示したく、プラグインを導入したのですが、
    このプラグインが吐き出すhtmlでは、思い通りの形(デザイン)にすることができませんでした。

    もっと具体的にどのプラグインでどんなコードでって書かないとおそらく皆さん具体的な助けようがないとおもうんですが・・・。比較的簡単なコードを少し足すだけでできそうな内容なんですけどね。(僕ができるかどうかは別として)

    hiromasaさんが昔書かれたWordPress のプラグインをつくるは良いですよ。

  9. narumi
    メンバー
    3 years前の投稿 #

    お付き合いありがとうございます!

    確かに他のテーマを見て作りを把握していくとノウハウもたまりますし、スキルアップの近道になりますね。
    ただ、「見る」為の基礎(php)があまりに乏しいので、
    プラグイン自体を作りたいというよりも、まずはそこを詰めているろころです。

    プラグインでちょっと悩んでいるのはプラグイン自体がHTMLを書き出すという点です。
    http://bono.s201.xrea.com/2006/07/174-blcomments/
    ↑こちらをそのまま使えば、最近のコメントは表示できます。
    が、そのままだとこのプラグインが書き出す要素しか表現できません。
    そこで、phpで書かれているプラグインファイルの中身を見ていき、
    ここだろうなという位置に記入者の名前やらを入れたりして試行しています。

    少し反れますが、
    以下のソースはほぼ同一のソースを吐き出します。
    ただ、MTあがりの私には、前者の方がわかりやすいんです。
    後者はさっぱりというか、中で何をしているか見えない印象です。
    前者は「ここはこれを表示して、ここはこれで」というのがはっきり明示されている感じです。
    ちょっと伝わりづらくてすみません。

    <ul>
    <?php query_posts('showposts=3'); ?>
    <?php while(have_posts()): the_post(); ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    <?php endwhile; ?>
    </ul>
    <ul>
    <?php wp_get_archives('type=postbypost&limit=3&format=html'); ?>
    </ul>

    できれば、最近のコメントも前者のように書きたいのですが、可能なことなのでしょうか。
    また、wordpress的には、前者と後者、どちらがスタンダードな表現方法なのでしょうか。
    任意のタグを挿入していきたいので、どの表現でも前者でいきたいのです。
    考え方がおかしい点とかないでしょうか。
    長くなって恐縮です。

    参考になるサイト、ありがとうございます!
    がっつり見ますっ

  10. IKEDA Yuriko
    常連回答者
    3 years前の投稿 #

    hiromasaさんが昔書かれたWordPress のプラグインをつくるは良いですよ。

    あとは Codex のプラグイン・リソースから関連情報を辿ってみてください。まだ翻訳が完了していませんが、順次行う予定です。
    hiromasa さんの文書は、とっかかりとしては悪くないのですが、そこからステップアップしようとすると、結局 Codex を見なければなりません。

    できれば、最近のコメントも前者のように書きたいのですが、可能なことなのでしょうか。

    query_posts() がコメントに対応していないので無理です。どうしてもデータベースにクエリを投げる必要があります。

    また、wordpress的には、前者と後者、どちらがスタンダードな表現方法なのでしょうか。

    公式にはどちらとも明言されていませんが、バージョン間の互換性を考えると、より高度な API (wp_get_archives など) を利用した方がよいと思います。データベースに直接アクセスするようにしてしまうと、DB 構造が変化すると動かなくなってしまいます。query_posts を使う場合は比較的互換性が保てると思いますが、「最近の投稿」をいじる他のプラグインと互換性が低くなります (アーカイブに関するフィルターを実行していないため)。

  11. Toru
    メンバー
    3 years前の投稿 #

    ↑こちらをそのまま使えば、最近のコメントは表示できます。
    が、そのままだとこのプラグインが書き出す要素しか表現できません。

    この↓プラグインを使えばご希望の事ができると思います。はき出すHTMLを管理画面から細かくカスタマイズできる他、Word数だけでなく、文字数も指定できるので、マルチバイト環境でもOKです。

    WordPress › Get Recent Comments « WordPress Plugins

    Brian’s Latest Commentsは表示がシンプルなのが良いですが、機能もシンプルすぎるので個人的には最近全く使ってません。

    hiromasa さんの文書は、とっかかりとしては悪くないのですが、そこからステップアップしようとすると、結局 Codex を見なければなりません。

    おっしゃる通りです・・・。

    前者と後者ですが、lilyfanさんと同じく、wp_get_archivesの方がよいと思います。僕の理由はそれがその用途のテンプレート・タグだからです。アーカイブス用のテンプレート・タグが用意されているのだから、それを利用しない手はありません。その方がコードもすっきりします。あと、僕の経験上query_postsは必要なとき以外は使わない方が良いです。

    後者はさっぱりというか、中で何をしているか見えない印象です。
    前者は「ここはこれを表示して、ここはこれで」というのがはっきり明示されている感じです。

    後者のwp_get_archivesはWordPressのテンプレート・タグです。Codexはお読みになられたでしょうか?XHTML+CSSを理解されているのであれば、PHPの知識がなくてもこのCodexを読めば中で何をしているか明確に見えると思うんですが。

  12. narumi
    メンバー
    3 years前の投稿 #

    ありがとうございます。
    ご丁寧なアドバイスに感謝感謝です。

    早速ご紹介いただいたプラグイン入れてみます!
    あと、大切なのはCodexのページですね。
    タグ絡みで困ったときは、とりあえずここにいくように心掛けます。

    >アーカイブス用のテンプレート・タグが用意されているのだから、それを利用しない手はありません
    確かにそうですね。
    ただ、その吐き出すコードが制作者の意図しないものであった場合、
    それを変更するのが、今の私には敷居が高いことがわかりました。

    1点質問させてください。
    wp_get_archivesのようにタグを含めて吐き出すテンプレートタグを変更したい場合は、
    どうやってその吐き出し元を見つけるのででしょうか。
    少なくともCodexには書いていないようですが、
    たとえば、<li>にクラスをあてたい or <li>内のテキストを<span>で囲いたいといった場合は、
    通常はどういうフローになりますか。

    私が考えられる策としては、
    ・こういう場所で情報をいただく
    ・自分で時間をかけてphpファイルをひとつひとつあらっていく
    ・なんとかclassとかをあてないで見た目を表現できるようにがんばる
    くらいですが、正解はありますか。

    >経験上query_postsは必要なとき以外は使わない方が良い
    まだこの意図が理解できるスキルレベルではありませんが、
    深まるにつれ、わかっていければと思います。

  13. nornor
    メンバー
    3 years前の投稿 #

    wp_get_archivesの詳細はご覧になりましたか?

    少なくともCodexには書いていないようですが、
    たとえば、<li>にクラスをあてたい or <li>内のテキストを<span>で囲いたいといった場合は、
    通常はどういうフローになりますか。

    この部分はwp_get_archivesのパラメータをお読み頂ければ解決方法が見つかると思います。
    wp_get_archivesだけではなく、パラメータ部分については他のテンプレートタグも同じパラメータがあり例文も色々載っているので、テンプレートタグを見ながら実際に打ち込んで見るのが早いと思いますよ。

    余談ですが、私はPHPについてはインクルードしか使えません。query_postsも例文のパラメータ部分を弄るぐらいで自分で書いたりは出来ません。つまりPHPはまったく書けません。
    ですが、Codexを見てテンプレートタグを使用しテンプレートを自作し、トップページに投稿カテゴリ毎に最新3件表示する、カテゴリー一覧には属する記事リストを冒頭に表示するなどやりたいと思ったことはほぼできてきました。
    要は…HTMLタグやCSSを覚える時と同じだと思います。
    Codexを読んで、作って、試行錯誤して、頑張ってみてください。投稿を読んだ限りではnarumiさんならすぐに馴染んでいけるんじゃないかなぁと思います。
    時間的制限もあるとの事なので、やりたい事がどうしてもテンプレートタグでは解決できそうにないなと感じたらその部分をピックアップして今回の様に皆さんに聞いてみてはどうでしょうか?

  14. narumi
    メンバー
    3 years前の投稿 #

    ご親切にありがとうございます。
    とても為になります。

    経験値としては雲泥の差ですが、
    同じような境遇を理解していただけるとちょっと安心します。

    パラメータの部分読みました。
    が、どれをどう使うと思いとおりになるのか、ちょっとわかりませんでした。
    ひょっとしたらパラメータの設定でclassを加えたりできるのでしょうか。

    ・liに任意のクラス
    ・li内のテキストリンクをspanで括る

    上記2パタンの書き方をお教えいだけえないでしょうか。
    wp_get_archivesというような記述のテンプレートから任意の形で吐き出せる方法が解れば、
    wp_list_categoriesなどの他のテンプレートでも応用できそうですし、かなり幅が広がりそうです。
    ヒントでも構いません。

    しかし、そもそもパラメータの設定だけでは無理だよ、
    ということであれば今回は見送ります。

    どうぞよろしくお願いします。

  15. nornor
    メンバー
    3 years前の投稿 #

    ヒント形式となりますが・・・

    format
    (文字列) アーカイブリストの形式。有効値:

    * html (初期値) - HTML のリストタグ(

  16. )と before・after の文字列。
    * option - セレクトボックスまたはドロップダウンメニュー用のセレクトタグ(<select>)内のオプションタグ(<option>)。
    * link - リンクタグ(<link>)内に。
    * custom - Custom list using the before・after の文字列を用いたカスタムリスト。
  17. 今回narumiさんが変更したい部分は上記部分に該当します。
    html(初期値)とある部分を見てください。
    初期値、ですのでwp_get_archivesを使用しなおかつformatというパラメータを指定していない場合この初期値部分が書き出されます。
    初期値部分には「HTML のリストタグ(

  18. )と before・after の文字列。」と書いていますので、wp_get_archivesで出力されるものは
  19. タグに囲まれた各記事へのリンク、となります。
    <?php wp_get_archives(); ?>
    と記述した場合には
    <li><a href="該当記事URL">該当記事タイトル</a></li>
    <li><a href="該当記事URL">該当記事タイトル</a></li>
    <li><a href="該当記事URL">該当記事タイトル</a></li>

    となります。

    それで、naomiさんのやりたい事というのが

  20. にclassを追記する、もしくは
  21. の後に<span>を入れたい、ですよね。
    formatの説明中に該当する箇所は

    * html (初期値) - HTML のリストタグ(

  22. )と before・after の文字列。
    * custom - Custom list using the before・after の文字列を用いたカスタムリスト。
  23. この2つになります。
    html(初期値)であれば・・・・
    <li>(beforeで指定した文字)<a href="該当記事URL">該当記事タイトル</a>(afterで指定した文字)</li>
    となるし、customの場合・・・・
    (beforeで指定した文字)<a href="該当記事URL">該当記事タイトル</a>(afterで指定した文字)
    となるからです。

    spanを追加したい場合にはhtml(初期値)を使用し、classを追加したい場合にはcustomを使用します。
    beforeとafterについてはこのテンプレートタグ部分で英文のままですが、他のテンプレートタグでは日本語訳になっていたと思いますので、見比べてみて下さい。
    後は…テンプレートにとりあえず書き出してみて表示させ、該当部分のソースをチェックして変化を試してみる、のがいいかと思います。

    うーん、参考にするにはCodexさんがあるしと思ってましたが、自分が使った範囲だけでも例をまとめた記事とか作ってみようかしら…

  • narumi
    メンバー
    3 years前の投稿 #

    ありがとうございます!
    できた気がします!

    spanでくくる場合↓
    <?php wp_get_archives('type=postbypost&limit=20&format=html&before=<span>&after=</span>'); ?>

    liに任意のクラスでさらに中身をspanでくくる場合↓
    <?php wp_get_archives('type=postbypost&limit=20&format=custom&before=<li class="AAA"><span>&after=</span></li>'); ?>

    ここっ、これで、できた気がしますが、
    間違ってないでしょうか。
    説明がすごくわかりやすくて、とんちんかんな私にも理解できました!
    感動です。。。(涙)

    例をまとめた記事とか作ってみようかしら…

    ぜひっ。
    初心者なのにちょっと偉そうですが、
    あのCodexの説明はnornorさまのご説明と比較すると、
    あまりに言葉足らずな印象でした。

  • Toru
    メンバー
    3 years前の投稿 #

    遅れましたが、nornorさんが解説された通りです。
    両方とも合ってると思います。はき出されたXHTMLは必ずチェックして下さい、その方が確実です。

    で、お題の

    wordpressによるサイト構築で必要なスキル

    ですが、必要なのはXHTML+CSSでウェブスタンダードなサイトを作るスキルです。PHPは要りません。nornorさんもおっしゃられましたが、多くの事はテンプレート・タグのパラメータを変える事で達成できます。特に一般的なブログのレイアウトと表示項目であれば、ほとんどの場合大丈夫です。

    WPでもMTでも、テンプレート・タグは「始まり」と「終わり」があります。確かMTは<% ~ %>でしたっけ?何か独自のタグ形式になっていたと思います。WPは独自形式を採用せずにコアファイルにて使われているのと同じ、PHPの記述方式を採用した、と思う方がわかりやすいのではと思います。乱暴に言ってしまえば、「PHPの皮をかぶったXHTML」です。

    なのでPHPよりも、CODEX等でテーマとテンプレートの仕組み、テンプレート・タグの種類とそれらのパラメータを一度全て目を通す方が良いです。PHPで知っておく事柄もでてきますが、それらはPHPの書き方、たとえばPHPは必ず<?phpで始まり?>で終わる、とかで、テンプレートを編集する内に自然とわかってきます。

    確かにCODEXの wp_get_archivesはちょっと言葉足らずな気はします。まだ翻訳が完成していないのはさておき、あれは翻訳元の本家英語版があの程度の説明しか書いていないのです。結局は、フォーラムで聞いたり、ググってブログの記事を探したり、テーマをダウンロードして参考にしたりするのが一番な方法と言うことになると思います。あと日本語で書籍も何冊か出版されているので、そちらも目を通してみるのも良いかと。

    初心者でも遠慮する事はないと思いますよ!

  • narumi
    メンバー
    3 years前の投稿 #

    この度は、心ある識者の方々のアドバイスを多数いただき、いろいろ学ぶことができました。

    まだまだ思うように扱えませんが、パラメータの設定の件から
    皆様のおっしゃる「phpは知らなくてもなんとかなるケースが多い」の意味が理解できましたし、
    「PHPの皮をかぶったXHTML」の意味も含めわかってきました。

    もう一歩だけ踏み込みたいです。(すみません)
    エントリーの投稿日時を表示したく、
    先ほどのタグ内、beforeあるいは、after内に
    <?php the_time('n/j H:i'); ?>
    を入れてみたところ、この使い方はまずいようで、エラーがでました。

    さすがにこの形まではパラメータによる設定は無理なのでしょうか。
    また別の使い方があるのでしょうか。

    適当にテンプレートを落してきて、それっぽいところを見てはいるものの、
    なかなか見つけられず。。。

  • Toru
    メンバー
    3 years前の投稿 #

    さすがにこの形まではパラメータによる設定は無理なのでしょうか。

    無理です。CODEXにも書かれていないように、wp_get_archivesには記事が投稿された日時を取得して表示するパラメータは用意されていません。エラーが出てしまう理由はおそらく<?php~?>の中に<?php~?>を記述しているからだと思います。

    こういうときこそ、最初で出てきた

    <ul>
    <?php query_posts('showposts=3'); ?>
    <?php while(have_posts()): the_post(); ?>
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
    <?php endwhile; ?>
    </ul>

    が使えます。使わざるを得ない、と言う方が正しい。

    <?php wp_get_archives('type=postbypost&limit=20&format=custom&before=<li class="AAA"><span>&after=</span></li>'); ?>

    だとたとえば、

    <ul>
    <?php query_posts('showposts=20'); ?>
    <?php while(have_posts()): the_post(); ?>
    <li class="AAA"><span><?php the_time('n/j H:i'); ?> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></span></li>
    <?php endwhile; ?>
    </ul>

    です。

  • narumi
    メンバー
    3 years前の投稿 #

    Toruさん
    度々ありがとうございます。

    >エラーが出てしまう理由はおそらく<?php~?>の中に<?php~?>を記述しているからだと思います。
    そうでした。
    ダメなのを知りませんでした。

    前々回のレスで私が書いたような2つの書き方の差異が自分の中でぼやけているので、
    自由度の低い(私見ですが)やり方(wp_get_archivesの方)を踏むのであれば、
    最初から柔軟性のありそうなやり方(query_postsの方)を選択した方がスムーズな気がします。
    とはいえ、

    使わざるを得ない、と言う方が正しい

    「できれば使いたくない(使わない方がいい)」という印象を受けます。

    lilyfanさんのコメントでも、

    バージョン間の互換性を考えると、より高度な API (wp_get_archives など) を利用した方がよい

    とありました。
    まだ、これを実感できていないので、
    不正でないのであれば、他のケースでもquery_postsの方でまずは考えていこうかと思います。
    今のスキルではどうしても高度に思えなくて。。。

    長くなってしまいましたが、お付き合いいただいた皆様、ありがとうございました。
    疑問をいいろいろ解消できました!
    またすぐ壁にあたると思いますが、
    懲りずにまたアドバイスいただけるようスキルアップしていきたいと思います。

  • Toru
    メンバー
    3 years前の投稿 #

    不正でないのであれば、他のケースでもquery_postsの方でまずは考えていこうかと思います。

    query_postsの使いすぎでよく起こる問題とその対処法はこれ↓を読んでください。yoshiさんがわかりやすく説明されています。

    その記事のシングルページに行かない??

    わかりやすい、わかりにくいは人によって違いますからね~。ただ柔軟性で言えば、「どちらの方が柔軟か」ではなく「どちらもできる方が、片方しかできない方に比べて柔軟だ」と僕は思います。シンプルなHTMLの時はテンプレートのコードもシンプルに。

  • narumi
    メンバー
    3 years前の投稿 #

    Toruさん
    ありがとうございます!
    確かにどちらも会得している方が柔軟性がありますよね。
    スムーズにそうなりたいところです。

    query_posts=ループのときに使う
    new WP_Query=?!(初対面)

    くらいの知識しかないので、せっかくいただいた有益なアドバイスを理解できる力がないです。。。
    ホントすみません。

    けっこう重要そうな感じなので、即お尋ねしたいところですが、
    本題と反れてしまうので、自分でもちょっと調べて
    解らない部分を別立てさせてもらいます。
    正直わからないとこばかりなんですけど。。。。w

  • yoshi
    メンバー
    3 years前の投稿 #

    解決済みになってますが、ちょっと気になるので補足させてください。

    query_posts=ループのときに使う

    query_postsを使うのは、"メインの"ループを変更して、そのページのコンテンツ自体を変えてしまう時だけです。極端な例では、ある個別ページの内容を別記事に差し替える、みたいなことをやる時です。
    query_postsを使うとループ外の様々な個所でも動作が変わってしまいますので、メインループと別に記事のリストを表示する目的で使うべきではありません。あえていうなら「不正な使い方」で、思わぬところで誤作動を招きます。
    英語版Codexにはしっかり「やるべきでない」と書いてあります。

    記事を取得して自由に表示したい時は、get_postsをお使いください。narumiさんのquery_postsバージョンと同じように表示できます。

  • narumi
    メンバー
    3 years前の投稿 #

    yoshiさん
    ご親切にありがとうございます。
    早速手間の記述のquery_postsの部分をget_postsに変えてみたところ、まったく同じようにへ表現できました。
    正確にはパラメータの部分が機能しなかたので、囲っているタグを、

    <?php $myposts = get_posts('numberposts=3');
    foreach($myposts as $post) :?>
    ~~~
    <?php endforeach; ?>

    に書き換えました。

    そもそも意味がわかっていないまま、どこかかソースをコピーしてもってきたので、
    その元も間違ってたわけですね。

    query_postsを使うのは、"メインの"ループを変更して、そのページのコンテンツ自体を変えてしまう時

    よくわかりませんが、そんなことができるんですか。。
    情けないほどスキルが追いついていませんので、ご指示とおりのことしかできませんが、
    これから同じようなことをする場合は、get_postsを使っていきます。
    (get_postsとquery_postsの違いがわかってませんが。。。w)

  • 返信

    ログイン しなければ投稿できません。

    About this Topic

    Tags