• 解決済 tanshio

    (@tanshio)


    サブディレクトリには「wp」のフォルダ名でインストールしました。
    wpディレクトリ内にあるindex.phpと、.htaccessをダウンロードして記述を変更して
    ルートにアップする手順で行っています。

    http://wordpress-jp.info/tips/root/ を参考にした所、
    wpディレクトリ内にあるindex.phpの記述変更の解説で、
    修正前:require(‘./wp-blog-header.php’);
    修正後:require(‘./blog/wp-blog-header.php’);

    上記の解説がありましたが、実際のwpディレクトリ内index.phpは
    require( dirname( __FILE__ ) . ‘/wp-blog-header.php’ );
    上記の様な記述になっていました。
    これはどの様に記述をすればよいのでしょうか?

    サブディレクトリは、
    .htaccessはそのままルートに入れ、元のファイルはそのままにしてあります。
    index.phpは→ require( dirname( __FILE__ ) . ‘/wp-blog-header.php’ );
    .htaccessは↓
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /wp/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /wp/index.php [L]
    </IfModule>

    # END WordPress

    上記の状態です。

    何度やり直しても画面が真っ白で何も表示されない状態なのです。
    何か原因は考えられますでしょうか?

    宜しくお願いします。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • WordPressを
    ドメイン/wp
    にインストールされている場合で、そのドメインでアクセスさせたいというのでしたら

    ドメイン/wp の中にある .htaccess と index.php をドメインのある階層にコピー。
    ドメイン/wp までのルートに書き換えます。
    と、同時に
    ダッシュボード内の設定も変更します

    参考にされた、

    修正後:require(‘./blog/wp-blog-header.php’);

    をドメイン/wp/wp-blog-header.phpと読み替えれば大丈夫です。
    サブドメインにインストール済みのWordPressを別のドメインで表示させたい

    トピック投稿者 tanshio

    (@tanshio)

    ありがとうございます。

    解説ページの手順は全て行い、サブディレクトリ―は当然wpですので、wpに置き換え、
    require(‘./wp/wp-blog-header.php’);
    としたのですが、それでも動かず質問をしました。

    解説では記述が、require(‘./wp-blog-header.php’); となっていた所
    実際には require( dirname( __FILE__ ) . ‘/wp-blog-header.php’ );
    となっていた為、この場合はどの様にすれば良いのかという質問となります。。

    3.8のバージョンアップ以降からなのか、
    codexの記載と実際の物とも違い、実際codex通りやっても表示が出ずで困っています。。

    はい、そのようです。3.7からの仕様かもしれません。
    わたしも先日間違えました。
    ‘./wp/wp-blog-header.php’ );

    . ‘/wp/wp-blog-header.php’ );
    で出来たのを失念していました。

    3.7になってから新規追加したサイトを確認したところ
    require( dirname( __FILE__ ) . ‘/wp/wp-blog-header.php’ );
    でも
    require( . ‘/wp/wp-blog-header.php’ );
    でも、動作しています。

    横から失礼します。

    require( . ‘/wp/wp-blog-header.php’ );
    の記述は間違っておりますので、動かないはずです。

    digit@maetelさんの一回目の回答
    require(‘./wp/wp-blog-header.php’);
    で合っています。

    3.8から
    require( dirname( __FILE__ ) . ‘/wp/wp-blog-header.php’ );
    のような記述に変わりましたが、riquireするファイルは同じですので、どちらも動きます。

    require(‘./wp/wp-blog-header.php’);は相対パス、require( dirname( __FILE__ ) . ‘/wp/wp-blog-header.php’ );はPHPを利用した絶対パスの記述です。

    なお、require(‘./wp/wp-blog-header.php’);の一つ目の「.」は相対パスの起点となるディレクトリで、「./」で現在のディレクトリを意味します。ですので、require(‘wp/wp-blog-header.php’);と同じです。

    一方、require( dirname( __FILE__ ) . ‘/wp/wp-blog-header.php’ );の一つ目の「.」はPHPの文字列結合演算子です。そのファイルの存在するディレクトリのフルパスと後ろの’/wp/wp-blog-header.php’を結合しています。

    2つの「.」の意味は違いますので、混同しないようにしてください。

    ixkaito さん、ありがとうございます。
    とても有用な勉強になりました。
    2つの「.」の意味を混同してました。3.7を機会に新しく追加したサイトが、
    dirname( __FILE__ ) となっていたので、戸惑っていたところでした。
    それ以前に、サブディレクトリからドメインディレクトリにURLを変更したサイトでは、
    require(‘wp/wp-blog-header.php’);で動作しているので、
    このトピックを機会に見なおしているところでした。
    今後は、変更になったことを踏まえて仕事で必要になった時間違わないようにします。

    ps.
    dirnameはディレクトリネームと覚えると良いですね。r と n が近いと m に見間違いそうで、タイピングで間違わないように気をつけないといけませんね。

    トピック投稿者 tanshio

    (@tanshio)

    맹조さん ixkaito さん

    記事が埋もれてしまいお返事がものすごーく遅くなりましたが、
    全て見させていただき大変詳しく書いていただき参考になりました。

    ありがとうございました!

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • トピック「トップページのURLを変更する方法について」には新たに返信することはできません。