この記事は何投稿目かをWordPressで表示する関数を生成AIで生成💮

2024.09.29

Logging

おはようございます.この記事は何投稿目かをWordPressで表示する関数を生成AIで生成しました、これぐらいの事は生成AIでも出来るのですねーそれも無料のChatGPTで.こういう事が出来るので少しPHPコードができる人でもなんとかなるだなぁーって思いましたが、実際の現場では1ファイル数百行ー数千行は当たり前なので仕事としては大変かと思うものの.ホームページを主としている会社では充分な助っ人になると思います.

この頃は分からないことは生成AIに聞いてそれでも明確な答えが出ないものはググってます.自分でも思うのですが、ちょっと煩雑な文章で書いているからもう少し丁寧に情報提供して実行すれば良いかなと思うものの、それを用意するのが少し億劫で答えに満足せずにググっている自分がいます.

function getArticleCount($post_id)
{
    global $wpdb;

    // 指定された投稿の公開日時を取得
    $post_date = $wpdb->get_var(
        $wpdb->prepare("SELECT post_date FROM $wpdb->posts WHERE ID = %d AND post_type = 'post' AND post_status = 'publish'", $post_id)
    );

    if (!$post_date) {
        return 0; // 投稿が存在しない場合
    }

    // この投稿より古い投稿の数を数える
    $post_rank = $wpdb->get_var(
        $wpdb->prepare(
            "SELECT COUNT(*) + 1 FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish' AND post_date < %s", 
            $post_date
        )
    );

    return $post_rank;
}

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

$post_date, $post_id, $post_rank, $wpdb, ChatGPT, from, function getArticleCount, global, gt, gt;get_var, if, lt, posts WHERE post_type, prepare, quot, quot;SELECT COUNT, quot;SELECT post_date, return, 助っ人, 関数,

「jetpack」と「Japanese AutoTag」の相性が悪くて公開及び更新出来なくなる不具合について

2017.12.21

Logging


jetpack」と「Japanese AutoTag」の相性が悪くて公開及び更新出来なくなる
不具合について対応を行ったので対応を記載します。
このファイルの52行目、53行目あたりでエラー表示される、
wp-content\plugins\jetpack\sync\class.jetpack-sync-queue.php
エラー内容は下記の通りです。

Uncaught exception ‘Exception’ with message ‘Serialization of ‘SimpleXMLElement’ is not allowed’

このエラーが表示されて困ったので対応してみた。
対応したソースはこちら::エラーが出現している部分に型のキャストしてあげると
エラーが出なくなります、これが正しい対応かどうかは分かりませんが
エラーが出なくなったのでひとまずこれで自分は運用していきます。

	function add( $item ) {
		global $wpdb;
		$added = false;
		// this basically tries to add the option until enough time has elapsed that
		// it has a unique (microtime-based) option key
		while ( ! $added ) {
			$rows_added = $wpdb->query( $wpdb->prepare(
				"INSERT INTO $wpdb->options (option_name, option_value, autoload) VALUES (%s, %s,%s)",
				(string)$this->get_next_data_row_option_name(),
				serialize((string)$item),
				'no'
			) );
			$added      = ( 0 !== $rows_added );
		}
	}

 

著者名  @taoka_toshiaki

※この記事は著者が30代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

'Serialization, 'SimpleXMLElement', $rows_added, $wpdb, autoload, exception, function add, INSERT INTO, is not allowed', it has a unique, Japanese AutoTag, microtime-based, option key, serialize, string, this basically tries to add the option, Uncaught exception, with message, wp-contentpluginsjetpacksync, エラー,