私はWord pressを使い始めて私はphpmyadmin
のテーブルを持っています。このテーブルには私のWordプレスサイトのさまざまな投稿やページに表示したいデータがあります。私はいろいろ調べて、Allow PHP in Post and Pages
という名前のプラグインを思いつきました。このプラグインを使えば、投稿やページにphpスクリプトを書くことができます。私は自分のページの投稿で小さなコードを試してみましたが、表示されるのはResource id #147
ですが、欲しい結果は得られませんでした。これは私が私の投稿の一つで試したコードです。
[php]
$connect = mysql_connect("localhost", "root", "");
mysql_select_db("ahadith");
$query = mysql_query("SELECT * FROM muslim");
echo ($query);
[/php]
これを手伝ってくれる人はいますか。または、データベースから目的のデータを取得してWordのプレスサイトに表示する方法もあります。ありがとうございました。
WordPressの準備ができ、デフォルトで接続されている間にデータベースに接続することを忘れてください。 DB固有のタスクのwpdb
クラスの後に移動します。
まず、dbクラスであるグローバル $wpdb
変数を呼び出してから、いくつかのメソッドを使用して特定のカスタムテーブルをクエリします。
テーブル構造がわからない?最初に説明してください:
global $wpdb;
$table = $wpdb->prefix . "muslim";
$query = $wpdb->get_results( "DESCRIBE $table" );
echo var_dump ( $query );
次の表から結果を選択します。
global $wpdb;
$table = $wpdb->prefix . "muslim";
$results = $wpdb->get_results( "SELECT * FROM $table" );
echo var_dump ( $results );
テーブルmuslim
は準備ができており、正しく追加されていると想定しています。右?
前のTweakから結果が得られたとしましょう。適切なループを使用してそれらを繰り返し処理できます。
これをカスタムショートコードに保存して、あなたが述べたように投稿/ページで使用することができます。 ショートコードの仕組み
add_shortcode('wpse_233021_shortcode', function(){
global $wpdb;
$table = $wpdb->prefix . "muslim";
$results = $wpdb->get_results( "SELECT * FROM $table" );
ob_start();
echo var_dump( $results );
return ob_get_clean(); // or iterate through and put into an HTML table
});
ページ/投稿コンテンツに挿入するための、この[wpse_233021_shortcode]
があります。
それが機能したと仮定すると、不要なときは常にDBを呼び出さないでください。データ更新時にデータをキャッシュしてキャッシュを破棄するか、特定の遅延でトランジェントが期限切れになるようにしてください.1週間、おそらく Transients API キャッシングの場合、非常に明確でシンプルであり、非永続キャッシングに非常に効果的です