サポート » 使い方全般 » htmlにWordPressを表示

  • 解決済 apple560

    (@apple560)


    html静的ファイルにWordPressの記事を表示させたいと思っています。

    WordPressbは「wp」の中にインストールしてあります。
    その外「info」へhtmlファイルを作りました。
    www
    ├wp
    ├wp-contentなどのWordPress
    ├info
    ├index.htmlなどhtml静的ファイル

    色々検索して以下のことをやってみましたが、WordPressのソースが表示されてしまうだけでした。

    1.htmlファイルの一番最初に<?php require(‘./wp/wp-load.php’); ?>をいれました
    2.さくらレンタルサーバーを使っているので
    .htaccessに以下を記述し、「info」フォルダのなかに
    Action myphp-script /php.cgi
    AddHandler myphp-script .php .html
    php.cgiに以下を記述し、「www」フォルダのなかに
    #!/bin/sh
    exec /usr/local/bin/php-cgi
    3.カスタム投稿タイプの記事を表示させたいので
      htmlファイルに以下の様に記述しました

    <?php if ( have_posts() ) : ?>
    <?php $my_query = new WP_Query( array( 'post_type' => 'news','posts_per_page' => 10,) );
    while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
    
    <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
    <h1 class="entry-title"><a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a></h1>
    <?php the_content() ); ?>
    </article>
    
    <?php endwhile; wp_reset_postdata(); ?>
    <?php endif; ?>

    どの部分が間違っているのか全く分かりません。
    ご教授頂けますでしょうか

15件の返信を表示中 - 1 - 15件目 (全27件中)
  • トピック投稿者 apple560

    (@apple560)

    階層が上手く表示できませんでした?
    「wp」と「info」が同列で
    「wp-contentなど」と「index.htmlなど」はその下です

    CG

    (@du-bist-der-lenz)

    WordPressのサイトは、ドメインであるのですか、ドメイン/wpであるのですか。

    トピック投稿者 apple560

    (@apple560)

    CG様早々にありがとうございます。
    ドメイン/wpです

    CG

    (@du-bist-der-lenz)

    ドメイン直下はhtmlのサイトがあり、ドメイン/wpを読み込みたいということですね。

    トピック投稿者 apple560

    (@apple560)

    リニューアル準備中のため
    ドメイン直下には現在使用中のhtmlサイトがあるので
    ドメイン/wpを作ってそこにWordPressとinfoフォルダの中にhtmlを入れています。
    infoフォルダ内のhtmlにドメイン/wpのWordPressを表示させたいのです。
    あっ、最初に書いた階層が変でしたね。ドメイン/wpの中にWordPressとinfoがあります。すみません。

    リニューアル後にはドメイン/wpをドメインに変更する予定です。

    HTMLファイルはプログラムを処理しないのでソースが出てきます。
    拡張子通りのHTML言語のみで記述してみてはどうでしょう。

    トピック投稿者 apple560

    (@apple560)

    msio様ありがとうございます。
    html言語ではWordPressの記事を読み込めないのでは?
    iflameは使いたくありません。

    CG

    (@du-bist-der-lenz)

    WordPress はPHPプログラムを使って、htmlで出力されているため、ブラウザで読むことが出来るシステムでしょう。拡張子はphpでも、htmlでも自由です。
    http://review.amadeusrecord.net/welcome.html

    サーバーにおいて、拡張子の種類で動作する要項にプログラムでうごかすかどうかは.htaccessに記述します。
    もしHTMLでプログラムが動くように設定してあるのであれば、HTMLファイルに一行だけ
    <?php echo "test" ?>
    と記述すると、上記がまるごとではなく test とだけ表示されると思います。

    もしそうでないならば、あらたに設定が必要になります。

    そして、それ以外に、ワードプレスで表示させているデータは、その多くをワードプレスが準備したもので構成されています。
    一部だけ抜粋しても動かない可能性があります。
    とくに、「ワードプレスのコマンド」としてCodexなどに記載の命令は、まずindex.phpから初期設定を読み込んで継承しなくては反映されないものも多くあります。

    一度表示したいページをHTML形式で保存して、そのファイルをアクセスさせる方法では不足している状態でしょうか。
    用途によっては別の解決方法があるかもしれません。

    こんにちは、

    htmlファイルでPHPを利用できるようにしなくても、htmlとjavascriptでも表示する事は出来るので、そういう方法も検討してみてはどうですか?

    https://tenman.info/study/wordpress/rest-example5.html

    HTMLファイルでPHPの動作についてのみなのですが、.htaccess にて指定されているゲートウェイ設定もひとつの方法です。
    しかしこれが動作していないとソースがでてきます。

    ワードプレスが機能するかどうかは別として、表示はなされるように設定するには、HTML ファイルを PHP プログラムで動作させるという命令を他の方法か別のいくつかで指定してあげる必要があります。
    PHP は機能してワードプレスの命令が動作しない場合、不明な命令文としてワードプレスの命令がエラーとして返ってきます。

    これはサーバーとの相性があって、PHPのバージョンを指定するものや記述の順番で動作がことなることがあります。
    もし、htaccess について他の記述方法にお心当たりがあればお試しいただけると幸いです。
    私も後ほど時間ができましたら、サーバーとの相性で動作する記述の例が確認したものをお伝えしたいと思います。

    サーバーのシェルスクリプトをどれほど変更されているかはわかりませんが私が他のサーバーなどで設定した経験のあるものをご紹介いたします。

    AddHandler phpX.X-script .html .php
    X.X はPHPのバージョンを入れます。5.3ならば5.3を5.6ならば5.6などの数字を入れます。以下の2つの候補と同居できませんのでこれで稼働しなかった場合で以下をお試しいただく場合はコメントアウトまたは削除をしてつぎの2行をお試しください。

    AddType application/x-httpd-php .html .php
    こちらはこのまま書き込みます。

    <FilesMatch "\.(html|php)$">
        SetHandler application/x-httpd-php
    </FilesMatch>

    上記の2番目候補と合わせてうごくこともあります。

    あまりたくさんの種類のサーバーを経験しているわけではないのであまり候補が
    ございませんが、これらを .htaccess に記述してみて<?php echo "test"?>だけを書いたHTMLがソースを表示させても test の文字のみが表示されるようであればプログラムは動きます。
    そしてワードプレスの命令が書き込まれたファイルはソースが表示ではなくエラーまたは読みだされたデータが表示されるようになると思います。
    サーバーのOS、Webサーバープログラムの種類とバージョン、そしてPHPのモジュールの系統とバージョン、それらで微妙に変わってくることがあります。

    もとよりプログラムを使われるのでしたらPHPファイルでもよいのではないでしょうか。
    htaccessの使い方によってはPHPファイルの動作でもアドレスの表示はHTMLにすることができます。
    リライトという構文をつかえば、PHPファイルにアクセスした際にみため上HTMLという拡張子のファイルにアクセスしたように見せかけることもできます。

    リニューアル作業中のみ旧式のデザインがかわらないデータを一時的に表示される予定なのでしょうか。
    それとも恒常的に旧バージョンを残されるのでしょうか。
    それならば表示されたデータをキャッシュのようにHTMLファイルへと保存し、その保存ファイルをサーバー上からアクセスさせることでもことたりませんでしょうか。

    重ねて用途についてもうすこしご説明をいただけると幸いです。

    トピック投稿者 apple560

    (@apple560)

    msio様
    いろいろありがとうございます。
    msio様の言われるとおり、まずはtestの文字のみが表示されるようにしてみます。

    どうもパスが苦手でして、
    htaccessはさくらレンタルサーバーの場合は
    .htaccessに
    Action myphp-script /php.cgi
    AddHandler myphp-script .php .html
    php.cgiに
    #!/bin/sh
    exec /usr/local/bin/php-cgi
    と2つ必要らしいのですが、それを置く場所とパスがよく分からなくて…
    まずはそこから再度やってみます。

    トピック投稿者 apple560

    (@apple560)

    CG様
    WordPressのsingle.phpをsingle.htmlにしても表示できると言うことでしょうか?

    トピック投稿者 apple560

    (@apple560)

    nobita様
    javascriptで表示させるというのはWordPressのRSSを表示させる方法でしょうか?
    動画や記事全てを表示させたいので、これはこれでまた悩みそうですね。
    最後の手段で検討したいと思います。
    ありがとうございます。

15件の返信を表示中 - 1 - 15件目 (全27件中)
  • トピック「htmlにWordPressを表示」には新たに返信することはできません。