photographer hiro.
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencobo さん
すみません、やっとPCの前に戻ってきました。
htaccessのリダイレクトでことが済むのでしたら、一番よろしいかもしれません。トップページだけをって話であれば、むしろ「2」の方法の方ができしている気がします。
理由としては、
・CSSが独立できる
・必要な箇所のみシステム化できる
・index.phpを独立させることにより、テンプレートを変更しなくても対応が可能
・メタタグなど、SEOに関わる部分のカスタマイズが容易ちょっと、サイトトップについて考え方のズレがある気がしますので再度コードを載せます。
<?php include('./wp/wp-load.php');//ワードプレスのインストールフォルダ
上記をサイトルートのindex.phpに書くことによって、ワードプレスの機能(関数)を使用することができます。
つまり、「http://www.presen-cobo.com/」自体は変更は必要なく
今まで、「http://www.presen-cobo.com/index.html」だったところを
「http://www.presen-cobo.com/index.php」にすることにより、トップページにワードプレス関数が使用できるようになります。あとは、吐き出されたhtmlソースとCSSの関係なので、ワードプレスだから洗練されている的な概念ではなく、単純なデザインレベルのお話だけになると思いますので
かっこいいデザインをすればかっこいいデザイン、おしゃれなデザインをすればオシャレなトップページになりますよね。
運用まで考えた際に、私の方では予測がつきませんので
こんな事例がありましたなどの紹介や、このパターンの場合にはメリットデメリットの予測をお伝えすることくらいしかできません。すみません、あまり良い答えを導き出せていないかもしれませんが
内容を常時差し替えますので、HP業者に任せず「自分で編集管理出来る方法」は必須です。
そうですね、とても大切なことだと思います。
技術の進歩は、なんとかしたいというところが原点ですのでフォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはお世話になります。
2番目のお話はちょっと概念が違います。
ドメインのルートにindeex.phpなどのファイルを置き、ワードプレスのデータベースから更新履歴などを取得する手法で、2の手法だからSEOが下がることはあり得ませんよ。
どちらかと言うと大型サイトで使われる方法なので、静的ページとCMSのいいとこ取り的に思って頂ければ。
また、ワードプレスだから上位に来る、静的ページだからこないのではなく、構築の仕組みと、botに対してどう言う呼び込み方をさせるかの問題ですので
後は本当に好みとこだわりに的なものになります。
現アドレスの検索順位も、正しい手順で、htaccessやphpで施せば引き継いでくれますので、リスクと効果を比較して、お好みの方法を選択して頂ければと思います。
ワイルドカード的なお話ですが、サーバー会社によっては、IPで再構築した後にネームサーバーを切り替えるなどサポートしてくれるサーバーもありますので、その辺りはサーバー会社にお伺い頂ければと思います。
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencobo さん
キモチ的にすご〜く、やりたいことがわかるのですが、結構リスクも伴うので、別の提案いたします。
運用中のサイトを引っ越しや再構築は、リスクが高いです。
私の実例ですが、今回の要件とはズレてしまいますが、考え方の一つとして稼働中のワードプレスは、まず、そのまま運用します。
いちばんさいしょに紹介させて頂いた手法で
オリジナルのトップページを作り、トップページとしての機能を持たせます。
更新履歴やインフォメーション、バナー、メニューなどその上で、現在のトップは、記事一覧などアーカイブとして機能させれば、見た目上はやりたい帰途と近くなり、かつリスクが激減すると言う事例です。
キモチよくはありませんが、手段の一つとして提案させて頂きました。
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencobo さん
出先ですみません。
まずは土地と家を想像して頂けるとイメージが湧きやすいですかね。
家をリフォームやリノベーションする時
まずは、別の土地に今の家と全く同じものを建てたいそのために、土地を確保します。
→これが一時的なドメインになります。なので、どこかの回想では意味がないので
さくらサーバーで、新たにドメイン契約などをしてまず一時的な移転場所を確保してください。一時的な場所が確保できたら、新たにに新しいドメインなどにワードプレスをインストールしてください。
一気に進めずまずはそこまで、環境的に可能かどうか検討してみてはいかがでしょうか。
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencobo さん
また、wpページのソース(html)をダウンロードしてサーバーにアップする様ですが、ソースはどうやってダウンロードするのでしょう?
テーマテンプレートのことですよね?
ワードプレスのインストールフォルダの中に「wp-content」というフォルダがあります。
更にその中に「themes」というフォルダがり、各テーマがフォルダーごとに存在します。管理ページに管理者でログインしますと、外観⇒テーマから現在使用されているテーマが確認できると思いますので、FPTクライアントソフトなどで、ダウンロードできます。
同じドメイン内の移動はとっても厄介なので、以下の方法を提案させて頂きます。
1.まずサーバーの方で、一時経由先のドメインを取得(1000~1500円程度)
2.「1」のドメインに新たにワードプレスを立て、管理ページのツールを使い移行します。
※完全に移行してることをかくにんしてください。
3.現状運用しているワードプレスやその他不要なものをFPT経由ですべて削除してください。
4.もともとあるドメインルートにワードプレスを新規インストールを行い、2の仮ワードプレスから移行します。というのが、一番安全に移行できる気がします。
管理画面のインストール場所を変更し、wp-configを書き換える方法もありますが、制作会社などでSE業務など携わっていなければ、お勧めはしません。
全てのデーターベースを壊す可能性などございます。
バックアップ自体はFPTツールをつかいwp-contentのフォルダーすべてバックアップしとくと良いと思います。
フォーラム: 使い方全般
返信が含まれるトピック: 長い記事のページングと目次の自動生成について教えてくださいganohrさん
下記の条件分岐のコードをページャー(ページナビ)の部分に書けば、1ページ目のみのひょうじがされますよ。
関数リファレンス/is paged<?php if( !is_paged() ): //もし複数ページの2ページ目以降じゃなかったら ?> 表示したい内容 <?php endif;//条件分岐終了 ?>
- この返信は7年、 8ヶ月前にphotographer hiro.が編集しました。理由: 誤字修正
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencoboさん
ご質問なのですが
一回話を主題に戻して整理させてください。根本的なお話なのですが
1.トップページとは、ワードプレストップではなく、サイトのルートという概念でよろしいでしょうか。
2.現状、ワードプレスは、ルートではなく、下の階層ににあり、それをルートにしたい
3.1ページのみの移動というのは、SQLやページIDをしてルートにおいてあるPHPに読ますのではなく
試に1ページを移動させてみたいってかんじでしょうか?
もし、3が該当の場合はmanboさんがおっしゃる通り概念的なものが誤りがある期がします。
ワードプレスの仕組みは、100ページあったら、100個分のページファイルが存在するのではなく
条件で定められたテンプレートにmySQLから各該当箇所にデータが取得され、htmlに該当してページが生成されるようにPHPで組まれます。システム的に移行のテストであれば、テストサーバー的なものを立てるのがよろしいと思います。
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencoboさん
新しくワードプレスを立て直し、移行ツールで以降などは、難しい感じでしょうか?
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはmambo さん
なるほどです。
私も、制作するとき、1番はセキュリティ重視で構築します。ただ単に形だけ整えば的なものは、ちょっと大変な事になりかねないですもんね。
私個人的には、同一サーバー内にテストサーバーの領域を作って、SQLから立て直しって方がセキュリティ面やデータ的にも安心できます。
おっしゃる通り、必要な部分は詳しい方の手を借りるのも大切だと思います。
フォーラム: プラグイン
返信が含まれるトピック: smart custom field で設定した値をプレビューで表示できないsugiuraさん
もし、不都合がなければ、ページテンプレートを作成し、ページテンプレートの条件分岐をする
もしくは、他のページで同じフィールドを使用していなけれな「if(SCF::get(‘group’) )」みたいな条件分岐はいかがでしょうか。プレビューがなにか悪さしてるんですかね。
「if(is_preview() == true) || 」みたいなのを併用するのもなにか違う気がしますし。。。すみません、あまり答えになっていませんね。
<?php function add_page_fields($settings, $post_type, $post_id, $meta_type) { global $post; //$post_typeを取得してる時点で$postは存在するので、global関数を用いました if($post_type === 'page' && is_page_template('page-about.php') ) { $Setting = SCF::add_setting('fields', '概要'); $items = array( array( 'name' => 'name', 'label' => '名前', 'type' => 'text' ), array( 'name' => 'content', 'label' => '内容', 'type' => 'textarea' ), array( 'name' => 'location', 'label' => '所在地', 'type' => 'text' ), ); $Setting->add_group('group', false, $items); $settings[] = $Setting; } return $settings; } add_filter('smart-cf-register-fields', 'add_page_fields', 10, 4); ?>
フォーラム: プラグイン
返信が含まれるトピック: smart custom field で設定した値をプレビューで表示できないsugiuraさん
下記のソースを該当ページが読まれてるテンプレートのphpに読ませたとき、どんな値がかえってきますか?
<?php $field_group = SCF::get( 'group' );//実際のフィールド名に書き換えてください! echo '<pre>' ; var_dump($field_group ) ; echo '</pre>' ; ?>
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencoboさん
質問です
マルチドメインとは、マルチドメイン型マルチサイトでしょうか?
それともサーバーで単純にマルチサイトを追加という意味でしょうか?フォーラム: 使い方全般
返信が含まれるトピック: 同じタイトルごとでまとめながら新しい日付順に表示したいso-taroさん
多分、du-bist-der-lenzさんが言われてるのはこんな感じだと思います。
$args = array( 'orderby' => 'title date', 'order' => 'ASC', ); $query = new WP_Query( $args );
フォーラム: 使い方全般
返信が含まれるトピック: Wp1ページだけをHPトップに移動させるにはpresencoboさん
こんなかんじでしょうか。
実際には、移動ではなくIDを指定してシステム外に読み込みになります。<?php include('./wp/wp-load.php');//ワードプレスのインストールフォルダ mb_http_output("utf-8"); ob_start("mb_output_handler"); $id = intval(14);//表示させたい投稿ID $post = get_post( $id ); if($post): //インクルードdなどでひな形を呼び出すか、テンプレートの内容をコピー include ( 'wp/page.php');// //下表示させたい内容 ?> <?php endif;//END $post ?>
※転送したページは、PHPで転送設定をする必要があるので、ご注意ください
フォーラム: プラグイン
返信が含まれるトピック: advanced custom fieldsのRepeater Fieldで表示件数を制御したいkomatterwwwさん
補足説明です。
ループ内において
$sub_field[] = get_sub_field( 'sub_field_name_A' ); $sub_field[] = get_sub_field( 'sub_field_name_B' );
又は
$sub_field[] = <li class="list_a">.esc_html(get_sub_field( 'sub_field_name_A' )).'</li>'.PHP_EOL; $sub_field[] = <li class="list_b">.esc_html(get_sub_field( 'sub_field_name_B' )).'</li>'.PHP_EOL; //「PHP_EOL」はソース内の改行コードです。
みたいな書き方でも構いません
※「the(表示関数)」ではなく「get(取得関数)」で必ずお子案ってください。として定義すると「[]」を付けたので配列のして定義されます。
注意としてループ間にかならずリセットが必要
//ループ前(whileやforeachの前にリセット)
$output = array();
$sub_field = array();//ループ外(ループ終了後) if($sub_field): $output = array_slice($sub_field, 0, 9); // 0~9番目つまり10件 $output_tag = '<ul>'. $output. '</ul>'; echo $output_tag; endif;
みたいな考え方で、つないであげると
ワードプレスだからここまでしかできないみたいな制限が少なくなりますよ。考え方的なところを参考にして頂けると幸いです。