
/** Geminiが自動生成した概要 **/
田んぼのイネが出穂し、雄蕊が出て開花期を迎えたという内容です。筆者は、毎年見られる風景ながらもその変化を喜び、高温による影響は見られないとしながらも、今後の台風シーズンを懸念しています。イネの開花時期や形状に関する記述からは、筆者の観察眼と稲作への関心の高さが伺えます。
/** Geminiが自動生成した概要 **/
田んぼのイネが出穂し、雄蕊が出て開花期を迎えたという内容です。筆者は、毎年見られる風景ながらもその変化を喜び、高温による影響は見られないとしながらも、今後の台風シーズンを懸念しています。イネの開花時期や形状に関する記述からは、筆者の観察眼と稲作への関心の高さが伺えます。
/** Geminiが自動生成した概要 **/
記事では、PageSpeed Insightsのユーザー補助スコアを100点にするための取り組みが紹介されています。
具体的には、記事タイトル下のカテゴリ名のリンクで指摘されていた「背景色と前景色には十分なコントラスト比がありません」という問題を解決しています。
解決策としては、WebAIMのConstract Checkerを用いて、背景色と文字色のコントラスト比を調整しました。スライダーで色を調整し、Passになるまで繰り返した結果、問題を解消できました。
ただし、サムネイル画像の低解像度に関する指摘は未解決で、別の対応策を検討する必要があるとのことです。
/** Geminiが自動生成した概要 **/
Minecraft: Pi Edition: Rebornにアイテムを追加するため、MCreator2022.2を使用し、ブドウを追加する方法を解説した記事です。
まず、MCreatorをダウンロードしてインストールします。次に、新規Modを作成し、アイテムの画像を作成します。画像作成は、MCreator内のペイントツールを使用します。完成した画像は任意の場所に保存します。
この記事では、CPUがARM64のマシンにはMCreatorをダウンロードできないことも補足されています。
/** Geminiが自動生成した概要 **/
SOY CMSでカテゴリを分類分けして出力したい場合に便利なモジュールが新たに開発されました。
このモジュールを使用すると、サイトの設定で「ラベルのカテゴリ分け」を有効化し、カテゴリを分類分けして作成することで、テンプレート上で分類名ごとにカテゴリ一覧を出力できます。
モジュールの設置は、テンプレート編集画面で所定のコードを記述するだけで完了します。標準ページに設置する場合はブログページIDの指定が必要です。
詳細な使用方法やダウンロードは、以下のサイトをご確認ください。
- SOY CMS公式サイト: https://saitodev.co/soycms/
/** Geminiが自動生成した概要 **/
SOY Shopのタグクラウドプラグインに、タグ候補のカテゴリ分け機能が追加されました。タグ数増加に伴うユーザビリティ向上のため、候補をカテゴリで絞り込めるようになりました。アップデート版パッケージはsaitodev.co/soycms/soyshop/からダウンロード可能です。以前公開されたタグクラウドプラグイン(記事ID:4008)の機能拡張となります。
/** Geminiが自動生成した概要 **/
高槻市の摂津峡で、軸の付け根の裂片の発生方向が途中で変わる特徴的なシダを見つけ、図鑑でオクタマシダと同定した。しかし、オクタマシダは京都府のレッドデータブックで絶滅危惧種Cに指定されているため、本当にオクタマシダなのか疑問に思った。さらに調べると、アオガネシダという絶滅寸前種に似ていることが分かり、大阪府高槻市にはアオガネシダの標本が残されているという記述も見つけた。後に、このシダはコバノヒノキシダの可能性も指摘され、シダ植物の同定の難しさを改めて実感した。摂津峡は、自然観察の絶好の場所である。
/** Geminiが自動生成した概要 **/
免疫の向上には、腸内環境の改善が重要であり、オリゴ糖と発酵食品がその鍵となる。オリゴ糖は、善玉菌のエサとなり、腸内フローラのバランスを整える。特にビフィズス菌を増やすことで、免疫細胞の活性化や抗体産生が促進される。発酵食品も同様に、善玉菌を増加させ、腸内環境を改善する。ヨーグルト、納豆、味噌などの発酵食品は、乳酸菌や納豆菌などのプロバイオティクスを含み、直接的に腸内フローラに作用する。さらに、発酵過程で生成されるビタミンやミネラルも免疫機能に寄与する。これらの食品を摂取することで、免疫力を高め、感染症予防や健康維持に繋がる。
/** Geminiが自動生成した概要 **/
SOY Shop用の簡易ショッピングモール運営プラグインが開発されました。従来、複数ショップでは顧客ポイントの共有化が課題でしたが、本プラグインは単一ショップに複数の「出店者」アカウントを追加することで解決。各出店者は自身の商品登録・注文情報・顧客情報(閲覧のみ)へのアクセスに制限され、他出店者の情報は見えません。これにより、顧客ポイントの共有が可能になります。現状、出店者用ページやカテゴリ管理機能は未実装。ショッピングモール運営希望者は問い合わせを推奨。プラグインはSOY Shopパッケージに同梱されています。
/** Geminiが自動生成した概要 **/
SOY CMS用ラベルカスタムフィールドプラグインが開発されました。ブログページのカテゴリごとに異なる説明文を表示する機能強化が目的です。従来のカテゴリー詳細表示プラグインではラベルのメモ欄しか利用できませんでしたが、このプラグインはラベル詳細画面にカスタムフィールドを追加し、入力した値をカテゴリページに出力できます。これにより、カテゴリページの表現力向上に貢献します。現在はテキスト系の項目のみですが、要望次第で画像項目の追加も検討されています。プラグインはsaitodev.co/soycms/から入手可能です。
/** Geminiが自動生成した概要 **/
SOY CMSで、ラベルの利用状況を確認できる機能が追加されました。ラベル詳細画面に、どのページのどのブロックで使用されているかを表示する機能です。ページやブロックが増え、ラベルの管理が複雑になるにつれて、使用状況の把握が困難になるという問題に対応しています。この機能により、どのページでラベルが使用されているかを一覧で確認できるようになり、サイト管理の効率化に繋がります。ブログやカテゴリーで使用されているラベルも表示されます。更新されたパッケージはsaitodev.co/soycms/からダウンロード可能です。
/** Geminiが自動生成した概要 **/
牛糞堆肥による土作りを推奨する人物の専門知識を検証する記事。牛糞堆肥は土壌改良に有効だが、窒素過多や未熟堆肥による病害リスクも伴う。記事では、推奨者がこれらのリスクを認識し、適切な管理方法を提示しているかを重視。窒素過多への対策、堆肥の熟度管理、施用量・時期の調整、土壌分析に基づいた施肥設計など、具体的な説明がない場合、推奨者の専門性は疑わしいと結論づけている。真の専門家は、堆肥利用のメリットだけでなく、デメリットやリスク管理にも精通している必要があると主張している。
/** Geminiが自動生成した概要 **/
SOY Shopユーザー向けに、商品・カテゴリ・顧客ごとにメモを残せる「SOY Shopノートパッドプラグイン」を開発しました。管理画面の詳細画面にWYSIWYGエディタ付きのメモエリアを追加し、画像やリンクの挿入も可能です。メモ投稿後は詳細画面にリンクが表示されます。現在はタイトルと本文のみですが、検索性向上などの拡張も検討中です。ダウンロードはsaitodev.co/soycms/soyshop/ から可能です。顧客からの要望を元に、簡単な引継ぎ情報共有を目的として開発され、商品、カテゴリ、顧客の詳細画面にメモを残すことができます。
/** Geminiが自動生成した概要 **/
SOY CMSの記事一覧表示を自由にカスタマイズできる「記事一覧選択表示ブロックプラグイン」の紹介です。 通常の記事一覧ブロックはカテゴリーや検索結果に基づいて表示されますが、このプラグインでは記事ごとにチェックボックスで表示/非表示を選択可能。 記事編集画面にチェックボックスが追加され、チェックを入れた記事のみがブロックに表示されます。 これにより、ラベルに関係なく任意の記事をピックアップした一覧を作成できます。ブロックの設定方法の詳細はプラグイン詳細画面に記載。プラグインを含むパッケージはsaitodev.co/soycms/からダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY Shopでは、商品情報にカスタムフィールドを追加できるようになりました。さらに、カテゴリごとにカスタムフィールド項目の表示/非表示を設定可能に。これにより、商品編集画面が肥大化せず、必要な情報だけを表示できます。具体的には、カスタムフィールドの項目設定でカテゴリを紐付け、編集画面で関連カテゴリを選択すれば、そのカテゴリに紐付いた項目だけが表示されます。この機能により、商品情報を分かりやすく管理できます。
/** Geminiが自動生成した概要 **/
SOY Shopで複数カテゴリのような設定を行うには、カスタムフィールドを利用します。商品詳細ページにカスタムフィールドを追加し、そこにカテゴリIDをカンマ区切りで入力することで、複数のカテゴリに属するように見せかけることができます。検索時には、カテゴリIDをクエリパラメータとして渡すことで絞り込み検索が可能です。 この方法はデータベースの構造を変えることなく、柔軟なカテゴリ設定を実現できます。ただし、管理画面上では単一のカテゴリにしか属していないため、カテゴリ一覧ページなどには表示されません。あくまで、商品詳細ページからのみアクセス可能な擬似的な複数カテゴリ設定です。真の複数カテゴリ設定には、プラグイン開発が必要です。
/** Geminiが自動生成した概要 **/
SOY Shop用のプラグインで、複数カテゴリの商品一覧を1ページに表示できる機能を追加しました。標準のナビゲーションページではカスタムサーチフィールド等のプラグインとの連携が難しいため、簡易的に商品ブロックと同等の機能を実現するプラグインを開発。管理画面で生成個数を指定すると、`<shop:module>`と`<block:id="item_list">`を使った記述が生成され、`category`属性にカテゴリIDを指定することで各カテゴリの商品一覧が表示されます。カテゴリIDはカテゴリ詳細画面のURL末尾の数字で確認できます。今後はカスタムサーチフィールドにも対応した商品ブロック作成プラグインを開発予定です。現在はカテゴリと表示件数、カスタムサーチフィールドに対応したプラグインを公開中です。
/** Geminiが自動生成した概要 **/
SOY Shop用カテゴリ版まとめ買い割引プラグインが開発されました。従来の全商品対象ではなく、カテゴリ毎に割引設定が可能になります。指定カテゴリ商品の個数/金額による割引設定、特定価格以上の商品限定、割引適用個数上限設定など、柔軟な割引ルールを設定できます。例えば、カテゴリAの商品を3個以上、または合計金額が1万円以上で割引、カテゴリBの500円以上の商品を2個以上購入で割引、といった設定が可能です。ピザ2枚目半額のような割引も実現できます。ダウンロードはsaitodev.co/soycms/soyshop/ から。
/** Geminiが自動生成した概要 **/
家畜糞堆肥の過剰施用は、秀品率低下や農薬使用量増加につながり、結果的に肥料代削減効果を上回る損失をもたらす。多くの農家が家畜糞堆肥を多用し、土壌劣化を引き起こしている。硝酸態窒素過剰は土壌pHを低下させ、カリウム欠乏、根の弱化、肥料吸収阻害を招く。さらに、硝酸態窒素は発根を阻害し、土壌水分や肥料分の吸収量を低下させる。結果として、微量要素の吸収阻害による作物栄養価の低下も懸念される。家畜糞堆肥は有機質肥料と誤解されがちだが、過剰施用は土壌環境悪化の大きな要因となる。家畜糞の増加は深刻な問題であり、栽培と畜産が連携し、食と健康を見直す必要がある。牛乳は栄養価が高いが、その副産物である家畜糞の処理は適切に行われなければならない。医療費増加抑制のためにも、家畜糞堆肥の施用量を見直すべきである。
/** Geminiが自動生成した概要 **/
筆者は10数年前、大学院を休学し京丹後で無農薬・半自然栽培を行う師匠の元で住み込み研修を行った。師匠の野菜の美味しさを通して「美味しい野菜を知らない人が大半」という言葉を痛感する。研修中、最新研究で栽培が楽になるかという地元民からの質問に対し、大学での研究は栽培自体に興味がないため楽にならないと答えた。師匠の本棚にあった化学の本に着想を得て、米ぬかボカシを元に化学的なアプローチで栽培技術の向上を図るようになる。その後、肥料に関する知識を深め、京都農販の木村氏との出会いを通じて慣行栽培の化学にも触れる。各地で講演を行う中で、秀品率の高い生産者は貪欲に知識を取り入れ、技術を洗練させていることを知る。そして、情報の集約点には師匠の本棚にあった化学の本があったことを再認識し、2000回目の記事を締めくくる。
/** Geminiが自動生成した概要 **/
SOY Shopでカテゴリごとに商品一覧の並び替え順を変える方法。カスタムフィールドで「使用人数」や「使用温度」などの項目を作成し、ソートに利用する設定にする。データベースのカラム型を数値に変更。soyshop.item.list拡張ポイントでプラグインを作成し、getSortメソッドでカテゴリごとに異なるソート条件を返す。テントなら使用人数の降順、シュラフなら使用温度の昇順など。標準設定は価格の昇順にする。URLを変えずに同一ページで並び替え順を変えられるため、SEOにも有効。
/** Geminiが自動生成した概要 **/
SOY CMSでSOY Shopのカスタムサーチフィールドを使えるように移植しました。カスタムサーチフィールドは、高度な検索フォームを生成するプラグインで、複数カテゴリ対応や商品カテゴリ検索も可能です。専門家検索サイトのような顧客用カスタムサーチフィールドも作成されました。SOY CMS版は、検索フォーム用の「カスタムサーチフィールド」と記事一覧出力用の「カスタムサーチフィールド記事一覧ブロックプラグイン」の2つがあり、用途に合わせて使い分けられます。ダウンロードはsaitodev.co/soycms/から可能です。
/** Geminiが自動生成した概要 **/
パン屋の友人の給与明細計算を手作業から解放するため、Go言語とQtで計算アプリを開発した。所得税の複雑な計算方法や保険組合への確認など、多くの困難を乗り越え、GitHubで公開に至った。開発を通じて税金や業務の仕組みへの理解が深まり、問題解決能力や丁寧な作業姿勢も身についた。小学校でのプログラミング教育必修化を控え、親自身もプログラミングの価値を実感する重要性を感じている。
/** Geminiが自動生成した概要 **/
SOY CMSのラベル一覧画面が見やすくなりました!ラベル数が増えると管理画面が煩雑になる課題に対し、ユーザーからの改修提案を元にアコーディオン機能が実装されました。分類ごとにラベルを折り畳めるようになり、UIが大幅に改善。 HTMLモジュールで共通部分を管理する等の対策も紹介しつつ、ユーザー参加型の開発を推進していることが伺えます。GitHubでのプルリクエストや問い合わせフォームからの連絡を歓迎しており、最新版はsaitodev.co/soycms/からダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY CMSのブログ説明欄がWYSIWYGエディタに対応しました。従来はHTML編集ができなかったブログの説明文を、リッチテキストで記述できるようになりました。 これを実現する「ブログ説明WYSIWYGプラグイン」が新たに開発され、HTMLを許可する`b_block:id="blog_description_raw"`タグも追加されました。このプラグインにより、ブログページの設定画面で、説明文入力欄がWYSIWYGエディタに切り替わり、より表現力豊かなブログ説明を作成できます。 ダウンロードはsaitodev.co/soycms/から可能です。この改良は、以前のカテゴリー詳細表示プラグインへのWYSIWYGエディタ対応に続くものです。
/** Geminiが自動生成した概要 **/
Googleは常時SSL化をランキング要因の一つとしています。つまり、サイトがHTTPSを使用しているかどうかは、検索結果の順位に影響を与えます。しかし、その影響は軽微であり、他のSEO対策と比べると優先度は低いと言えるでしょう。
常時SSL化の主なメリットはセキュリティの向上です。ユーザーの情報を暗号化することで、盗聴や改ざんのリスクを軽減できます。これはユーザーの信頼感向上に繋がり、間接的にSEO効果に繋がる可能性があります。
また、常時SSL化によってサイトの表示速度が向上する可能性も指摘されています。Googleはサイトの表示速度もランキング要因としているため、結果的にSEOに良い影響を与える可能性があります。
しかし、常時SSL化自体が劇的なSEO効果をもたらすわけではないので、他の重要なSEO対策を疎かにしてまで優先するべきではありません。コンテンツの質やユーザーエクスペリエンスの向上など、他のSEO対策と並行して行うことが重要です。
/** Geminiが自動生成した概要 **/
プログラマは、システム不具合の多くが「想定外の使い方」に起因するため、電話での口頭説明ではなく詳細な情報提供を求める。これは、プログラミングが物理法則に縛られず、思考がそのまま反映されるため、想定外の動作が顕著な不具合となる特性による。効率的な情報伝達と問題解決のため、プログラマはコーディング規約、高機能エディタ、テスト自動化、タスク管理ツール、オープンソースといった手段を活用し、思考すべき点とそうでない点を明確化し、再発防止と情報共有を促進する。妻にプログラミングを教えるのは、これらの思考プロセスと情報伝達の重要性を体験させ、世界中の資産を活用する術を学ばせるためである。
/** Geminiが自動生成した概要 **/
SOY CMSで複数のブログページを作成した場合、各ページのカテゴリ一覧を他のページで出力するモジュール「cms:module="common.multi_blog_category"」が追加されました。
使用方法は、モジュール内に「b_block:id="category_on_{ブログページのURI}"」と記述します。これにより、ブログページ毎のカテゴリ一覧を出力できます。
例えば、ブログ1ページ(URI:blog)とブログ2ページ(URI:sub/blog)のカテゴリ一覧を標準ページに出力するには、「b_block:id="category_on_blog"」と「b_block:id="category_on_sub_blog"」を使用します。
このモジュールにより、標準ページから他のブログページのカテゴリ一覧にアクセスし、各ブログのカテゴリページに移動できるようになります。
/** Geminiが自動生成した概要 **/
Lenovo Ideapad 720SにUbuntu 18.04β版をインストールしたが、内蔵Wi-Fiアダプタは使用できなかった。Wi-Fiアダプタ自体はRealtek製で物理的には動作しているものの、対応するドライバが見つからない。ArchWikiやRealtek、Githubのリポジトリを調査した結果、rtl8821ceドライバが必要だとわかったが、Ubuntuに導入できる形では提供されていない。そのため、現時点ではUSB接続のPocketWifiを利用してインターネットに接続している。
/** Geminiが自動生成した概要 **/
Ryzen 5 2500U APU搭載のノートPCにUbuntuをインストールすると、フリーズが発生し失敗した。翌朝、研究すると、Ryzen APUにはLinuxカーネル4.15のAMD GPUドライバーが必要であることが判明。Ubuntu 18.04のβ版イメージを作成し、UEFIから起動させるとインストールが成功した。現在は問題なく動作するが、正式版がリリースされる4月末までは仕事を保留する。
/** Geminiが自動生成した概要 **/
SOY Shopのクーポン自由設定プラグインに、クーポンをカテゴリ分けする機能が追加されました。クーポンコードの接頭辞をカテゴリ毎に設定できるため、クーポン登録時に規則を覚えていなくても自動入力できます。例えば、「gaku」で始まるクーポンは値引き額、「ritu」で始まるクーポンは値引率といった設定が可能です。 新規登録時、カテゴリを選択すると接頭辞が自動挿入されます。この機能は管理画面での注文時にも有効で、接頭辞が表示されるためクーポンコードを思い出すヒントになります。最新版はsaitodev.co/soycms/soyshop/からダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY CMSのカテゴリー詳細表示プラグインがアップデートされ、WYSIWYGエディタ(TinyMCE)に対応しました。ユーザーからの要望に応え、ラベルの詳細編集画面でHTMLタグだけでなく、画像や動画も手軽に挿入できるようになりました。プラグインの詳細設定でWYSIWYGエディタの使用をチェックすることで有効化できます。このアップデートにより、よりリッチなコンテンツをカテゴリー詳細に表示することが可能になります。最新のパッケージはsaitodev.co/soycms/からダウンロードできます。
/** Geminiが自動生成した概要 **/
SOY Shopの管理画面でプラグインが独自のページを持てるようになりました。従来、プラグインの設定画面はSOY Shop管理画面の特定のページ内に表示されていましたが、今回のアップデートにより、プラグインごとに独立したページを作成できるようになりました。これにより、プラグインの設定項目が増えても管理画面が煩雑にならず、プラグイン開発者も自由にページ構成を設計できます。新しいページはメニューに追加され、アクセスしやすくなりました。この機能はSOY Shop2.1.1以降で利用可能です。今後、プラグイン開発者はこの機能を活用して、より使いやすい管理画面を提供することが期待されます。
/** Geminiが自動生成した概要 **/
SOY Shop用の顧客グループ分けプラグインを開発しました。顧客ごとにグループを設定し、グループ別に顧客一覧表示が可能になります。顧客管理画面にはカスタムサーチフィールドも追加し、高度な検索機能を提供します。開発の背景には、顧客管理の効率化と多様な検索ニーズへの対応があります。このプラグインを含むパッケージはsaitodev.coからダウンロード可能です。カスタムサーチフィールドの構築に関する詳細は、サイト内の関連記事を参照ください。 カタログサイト構築にも活用できる機能です。
/** Geminiが自動生成した概要 **/
Socket.IOで個別チャットを作るための第一段階として、NamespacesとRoomsの概念を導入した。サーバー側(server.js)では、`io.of('/chat')`でchatというnamespaceを作成し、接続時に`socket.join("default")`で全ユーザーを"default" roomに所属させた。イベント発信時は`chatNS.to("roomName").emit()`を使用することでroom内限定の通信を実現。クライアント側(index.html)は、`io.connect("http://localhost:8080/chat")`のように接続URLにnamespaceを指定することで変更完了。これにより、複数ユーザーが同じチャットルームに参加できるようになったが、まだユーザー限定チャットにはなっていない。
/** Geminiが自動生成した概要 **/
SOY CMSの標準ページでブログページのサイドバー(b_block)を使えるようにするモジュールを追加しました。標準では検索結果ページなどでb_blockが使えず、不便でした。このモジュールは `<!-- cms:module="common.blogparts" cms:blog="ブログID" -->` で囲むだけで、指定ブログのb_blockが使用可能になります。ブログIDはブログ詳細画面のURL末尾から取得します。カテゴリ一覧、月別アーカイブ、最近の記事/コメント/トラックバック一覧などに対応。Gravatar連携は別プラグイン推奨。パッケージはsaitodev.co/soycms/からダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY Shopのカスタムサーチフィールドプラグインが強化され、カテゴリの詳細検索が可能になった。従来のカテゴリ検索は親子関係に限定されていたが、今回のアップデートにより、複数のカテゴリに紐づく商品をカスタム条件で絞り込めるようになった。プラグイン設定画面でカテゴリ用のサーチフィールドを追加すると、公開側のカテゴリ詳細ページに検索フォームが表示される。これにより、親子関係を超えたカテゴリの関連付けが可能になり、より高度な商品検索を実現できる。強化版プラグインはsaitodev.coからダウンロード可能。
/** Geminiが自動生成した概要 **/
SOY CMSの記事詳細ページで、同じカテゴリの記事一覧を表示する「同一カテゴリーの記事一覧ブロックプラグイン」が開発されました。このプラグインは、SOY CMSのプラグインブロック上で動作し、ブログページの記事ページでのみ機能します。プラグインブロックの使い方については、別記事「SOY CMSでプラグインブロックを追加してみた」を参照ください。ダウンロードはsaitodev.co/soycms/ から可能です。
/** Geminiが自動生成した概要 **/
SOY Shopのサイトマッププラグインがアップデートされ、多言語サイトに対応しました。日本語ページと対応する他言語ページを自動で紐付ける機能が追加され、手動でURLを登録する際にも、各URLに他言語ページのURLを指定できるようになりました。カスタムサーチフィールドの商品一覧ページも多言語化に対応。これらの機能は最新のプラグインパッケージに含まれており、saitodev.coからダウンロード可能です。カスタムサーチフィールドを活用した高度な検索フォーム設定や複数カテゴリ設定、カタログサイト構築については、関連記事を参照ください。
/** Geminiが自動生成した概要 **/
SOY Shopのサイトマッププラグインに、任意のURLを手動登録する機能が追加されました。カスタムサーチフィールドによる商品一覧ページなど、自動生成されないページをサイトマップに含めることが可能になります。管理画面でURLと最終更新日時を登録すると、サイトマップの末尾に追加出力されます。この機能はカスタムサーチフィールド以外にも、SOY CMSやHTMLファイルで作成されたページにも活用できます。更新版パッケージはサイトからダウンロード可能です。カスタムサーチフィールドは、高度な検索フォームや複数カテゴリのような設定を可能にし、カタログサイト構築にも役立ちます。
/** Geminiが自動生成した概要 **/
SOY Shopのサイトマッププラグインがアップデートされ、カスタムサーチフィールドで生成された商品一覧ページのURLをサイトマップに追加できるようになりました。 対応フィールドは現在チェックボックスとセレクトボックスのみ。カスタムサーチフィールドの管理画面で「サイトマップに追加する」を選択することで、商品一覧ページがサイトマップに登録されます。多言語化プラグインとの併用は現状未対応。更新版パッケージはsaitodev.coからダウンロード可能です。この機能により、複数カテゴリのような設定や高度な検索フォームで絞り込まれた商品一覧ページへのアクセスが容易になり、SEO効果も期待できます。
/** Geminiが自動生成した概要 **/
カスタムサーチフィールド機能を拡張し、検索結果ページでも並び替えが可能になりました。これにより、ユーザーはカスタムフィールドの値に基づいて検索結果をソートできるようになります。
この機能は、カスタムサーチフィールドで追加する項目でソート検索を追加し、検索結果ページに並び替えボタンを設置できるようになります。
この機能の追加により、ユーザーは検索結果をさらに柔軟に絞り込むことができ、必要な情報をより容易に見つけることができます。
/** Geminiが自動生成した概要 **/
SOY Shopの商品情報出力にカテゴリリンクを追加しました。商品一覧と商品詳細ブロック内でカテゴリへのリンクを出力するタグが利用可能になります。商品グループの場合は、親商品名、詳細ページリンク、カテゴリ名とリンクも出力可能です。 また、商品一覧と検索結果ページのデータベース読み込み回数を最適化し、表示速度を向上させました。特に商品数が多いサイトで効果的です。更新版パッケージはsaitodev.co/soycms/soyshop/からダウンロード可能です。追加タグの詳細は同サイトのブロックタグページに記載されています。
/** Geminiが自動生成した概要 **/
SOY Shop用の商品ごと送料設定モジュールが試作されました。複数の作家がそれぞれ異なる送料で商品を販売する場合、商品ごとに送料とメールアドレスを設定できるようになります。同じ作家から複数商品を購入しても送料は1個分のみ加算されます。注文時には作家にも通知メールが送信されます。デモ画像では商品情報登録画面に地域別送料とメールアドレス入力欄が追加されています。このモジュールはサイト(/soycms/soyshop/)からダウンロード可能です。商品ごとではなくカテゴリごとに設定すれば、カテゴリ=作家として複数商品の送料を一括管理も可能になります。作家の商品販売に関する要望は問い合わせページ(/soycms/inquiry)から受け付けています。
/** Geminiが自動生成した概要 **/
SOY Shopのカスタムサーチフィールドが多言語化対応しました。商品名・カテゴリ名に続き、カスタムサーチフィールドの値も各言語毎に設定可能になり、CSVのインポート/エクスポートにも対応。管理画面では、各言語商品編集画面からカスタムサーチフィールドの設定を開き、言語ごとの値を入力できます。CSVによる多言語データの一括登録も可能になり、運用負荷を軽減。カスタムサーチフィールドは、カスタムフィールドと比べデータベーススキーマが洗練されており、表示速度の低下が起こりにくいメリットがあります。多言語対応版はsaitodev.coからダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY ShopのカテゴリCSVインポート/エクスポート機能が強化され、カテゴリ名の多言語化に対応しました。多言語サイトプラグインで設定した言語ごとにチェックボックスが追加され、商品名と同様にカテゴリ名も多言語管理が可能になりました。このアップデートにより、各言語への対応が容易になり、グローバルなECサイト運営が効率化されます。最新のパッケージはsaitodev.co/soycms/soyshop/ からダウンロード可能です。以前公開された商品名の多言語化やカテゴリカスタムフィールドへの対応と合わせて、CSVによる多言語対応がさらに充実しました。
/** Geminiが自動生成した概要 **/
SOY ShopのカテゴリCSVインポート/エクスポート機能が強化され、カテゴリカスタムフィールドに対応しました。カテゴリカスタムフィールドプラグインをインストールし、項目を追加すると、CSVのインポート/エクスポートページにカスタムフィールドが追加されます。これにより、CSVでのカテゴリデータ管理がより柔軟になります。最新版はsaitodev.co/soycms/soyshop/からダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY Shop向けプラグイン「カスタムサーチフィールド」に新機能「子商品一覧」が追加されました。この機能により、子商品のみを表示する商品一覧ページと検索結果ページを作成できます。親商品名とカテゴリ名も表示可能で、深い階層の商品カタログサイト構築に役立ちます。同時に、カスタムサーチフィールドで範囲項目と商品情報項目の併用時に検索機能が動作しない不具合も修正されました。改良版プラグインはサイト(https://saitodev.co/soycms/soyshop/)からダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY Shopのカスタムサーチフィールドでチェックボックスの値を商品詳細ページに表示、更にリンク化する方法。管理画面でチェックボックス型のカスタムサーチフィールド(例:フィールドID「custom_check」、ラベル「カスタムチェック」)を作成し、各項目を設定。商品詳細テンプレートに`<!-- csf:id="custom_check_番号_visible" -->`と`<!-- csf:id="custom_check_番号" -->`を記述することで、選択された項目のみ表示される。番号は設定した項目の順番(0始まり)。リンク化は`<a href="{url}=<!-- csf:id="custom_check_番号" /-->">`で囲み、{url}をサイトURLに置き換える。
/** Geminiが自動生成した概要 **/
SOY CMSのブログ設定において、カテゴリ分けに使用するラベルを一括解除するボタンが追加されました。ユーザーからの要望に応え、複数選択されているラベルチェックボックスを一度にオフにする機能です。この改善により、ブログ記事のカテゴリ分け作業が効率化されます。追加されたボタンの画像は記事内で確認できます。本機能を含むパッケージはsaitodev.co/soycms/からダウンロード可能です。
/** Geminiが自動生成した概要 **/
SOY Shopの商品詳細ページでSEO対策と商品コード表示の課題を解決するため、タイトルフォーマット等のメタタグに商品コードとカテゴリ名の置換文字列を追加。商品名に商品コードを含めることで発生するデータベース肥大化や表示変更の煩雑さを解消。商品名は本来の役割に特化させ、商品コードはメタタグで管理することで、システムの効率化と柔軟な表示を実現。この変更はGitHub上の最新SOY Shopパッケージに含まれており、SEO効果の向上と運用コストの削減に貢献する。
/** Geminiが自動生成した概要 **/
SOY CMSのブログ機能を利用した地図アプリ作成の第2弾では、マーカークリック時のインフォウィンドウ表示を実装しました。前回設定したカスタムフィールド(サムネイル、緯度経度)に加え、ブログ記事のタイトルとリンクをインフォウィンドウに表示するようにテンプレートを修正。具体的には、JavaScriptでインフォウィンドウの内容を生成し、マーカークリックイベントで表示する処理を追加しました。これにより、地図上のマーカーから各店舗の詳細ページへ遷移できるようになりました。将来的にはSOY Shopと連携させ、カテゴリを店舗名として地図上に店舗を表示するショップページの作成も構想されています。
/** Geminiが自動生成した概要 **/
SOY Shopの商品詳細ページで登録商品をランダム表示するPHPモジュールを作成する方法です。まず、管理画面でモジュールID「item.random」のPHPモジュールを作成し、指定のコードを記述します。このコードはSOY2DAOを使い、全商品、または指定カテゴリの商品をランダムに取得し、表示件数を制限するSQLを実行します。商品詳細ページテンプレートに`<!-- shop:module="item.random" -->`と`<!-- block:id="random_item_list" -->`を記述することで、ランダムに選ばれた商品が表示されます。カテゴリを指定するには、`$categoryId`変数にカテゴリIDを代入します。
/** Geminiが自動生成した概要 **/
SOY Shopの在庫数一括設定プラグインのバグ修正について。当初、商品カテゴリ検索でカテゴリIDのLIKE検索を用いていたため、意図しないカテゴリの商品も検索結果に含まれる不具合があった。例えば、カテゴリ1(ID:1)で検索すると、カテゴリ10(ID:10)も検索対象となっていた。これはIDに"1"が含まれるため。この不具合は修正済みで、修正版はGitHubからダウンロード可能。
/** Geminiが自動生成した概要 **/
CMS開発経験者として、CMSの過剰カスタマイズは避けるべきだと主張しています。標準機能で不足する場合はプラグイン活用を推奨し、どうしてもカスタマイズが必要なら汎用化し開発元に取り込んでもらうべきです。
成功するネットショップは過剰なカスタマイズを避け、標準機能のバージョンアップによる恩恵を最大限に活用しています。HTMLやPhotoshopを使いこなし、小規模な修正を繰り返すことで魅力的なLPページを作成し売上向上を実現しています。
カスタマイズ依頼の際は、標準機能への実装可能性や他サイトでの汎用性を重視し、CMSカスタマイズが難しい場合はAPI連携可能な外部サービスを検討します。この柔軟な姿勢がサイトの急成長を支えています。
/** Geminiが自動生成した概要 **/
筆者はSOY CMSの開発元を退職後も、個人で開発を継続している。理由は、開発元代表の行動(SNSでの女装写真連投)と農業事業への注力により、開発が停滞し、経験豊富な開発メンバーが離脱したため。退職後、ユーザーの声を直接聞き、SOY CMSの価値を再認識し、開発継続を決意。公式フォーラムへの修正報告は反映されず、個人でパッケージを配布。開発元の事業不振を憂慮し、リポジトリの公開を提案。利用者がいれば開発を続けると宣言している。
/** Geminiが自動生成した概要 **/
SOY Shopのカスタムサーチフィールドで複数カテゴリのような商品一覧ページを作成できる機能に加え、新たにソート機能が追加されました。カテゴリとして使用したフィールド以外の値で商品を並び替えることが可能になります。ソートボタン設置プラグインと同様のアンカータグをカスタムサーチフィールド側で設定できるようになりました。この機能追加により、より柔軟な商品表示が可能になります。追加機能を含むパッケージはGitHub(https://github.com/inunosinsi/soycms/tree/master/package)で公開されています。
/** Geminiが自動生成した概要 **/
SOY Shopでは複数カテゴリ機能はパフォーマンス低下のため廃止され、代替としてカスタムサーチフィールドプラグインが推奨されています。カスタムサーチフィールドでは、チェックボックス形式で複数の「タグ」を商品に設定可能。管理画面で項目を追加し、商品詳細ページでタグを選択、商品一覧ページには専用ページを作成し、CustomSearchFieldItemListモジュールを適用することでタグによる絞り込みを実現します。URLは「http://ドメイン/ショップID/ページのURL/フィールドID/タグ値」となります。ただし、管理画面の商品検索ではカスタムサーチフィールドによる検索は不可。その対策として、各フィールドに一括設定ページが用意され、簡易的な商品検索フォームが利用可能です。
/** Geminiが自動生成した概要 **/
SOY CMSのブログで、記事管理者でもカテゴリを追加・編集できる機能が追加されました。従来はラベル作成後、管理画面でカテゴリ設定が必要でしたが、このアップデートで記事管理画面から直接カテゴリ(ラベル)の作成・削除・編集(名称、アイコン、説明)が可能になりました。カテゴリ追加時に自動でブログに設定されるため、管理者の手間が省けます。ただし、表示順の変更はできません。この機能は本体改修のため、GitHubから最新パッケージをダウンロードしてください。
/** Geminiが自動生成した概要 **/
SOY CMS/Shopのブロックで、リストの最初と最後で表示を変える方法を紹介。`soy:id="at_last"`と`soy:id="not_last"`を使えば、最後の要素だけ、または最後以外の要素だけに特定のHTMLを出力できる。例えば、記事一覧で最後の記事の下にだけ太線を表示するといったことが可能。
さらに、`soy:id="at_first"`と`soy:id="not_first"`と組み合わせることで、より複雑な表示制御が可能になる。例えば、カテゴリ一覧で最初の要素にのみカテゴリタイトルと`<ol>`タグを出力し、最後の要素にのみ`</ol>`タグを出力することで、無駄なHTMLを出力せずに済む。
/** Geminiが自動生成した概要 **/
SOY CMSで記事投稿時に毎回サムネイル画像を用意するのは手間がかかる。特に、カテゴリ毎に同じようなサムネイルを使い回したい場合、作業効率が悪い。そこで、サムネイルプラグインの設定画面でラベル毎に画像を設定できるように機能拡張した。記事投稿時に該当ラベルにチェックを入れるだけで、予め設定した画像パスがアップロードフォームに挿入される。異なる画像を使いたい場合は、通常通りアップロードフォームから画像を指定すれば良い。この改良により、カテゴリ毎に共通のサムネイル画像を設定する場合の作業負荷が大幅に軽減される。尚、サムネイルプラグインを使わずとも、記事本文の画像をリサイズ表示する方法もある。
/** Geminiが自動生成した概要 **/
SOY Shop用のプラグイン「カスタムサーチフィールド」の紹介。このプラグインは、高度な検索フォームをサイトに簡単に設置できる。カスタムフィールドのように項目を追加し、生成されたタグを貼り付けるだけでフォームが表示される。商品カタログサイトでの活用が想定され、複数選択可能なチェックボックスフィールドをタグのように使う事例もある。カスタムフィールドからのデータ移行も可能。プラグインはsaitodev.co/soycms/soyshop/ からダウンロードできる。
/** Geminiが自動生成した概要 **/
SOY CMSのブログ設定で、トップページ以外(記事、カテゴリ、月別アーカイブ)のURLを空にすると、表示はされるもののHTTPステータスが404になる不具合を修正。アクセス解析で該当ページが404エラーとして記録される問題が発生していた。修正ファイルはフォーラム(http://www.soycms.org/viewtopic.php?f=7&t=1775)に、修正版パッケージはGitHub(https://github.com/inunosinsi/soycms/tree/master/package/soycms)に公開。soycms_1.8.12p7.4以降で適用可能。
/** Geminiが自動生成した概要 **/
肥料の窒素は、植物によって吸収される形態が異なります。畑の作物は主に硝酸イオン(NO₃⁻)の形で窒素を吸収します。土壌中のアンモニウムイオン(NH₄⁺)は、微生物による硝化作用で硝酸イオンに変換されます。しかし、嫌気条件下では脱窒が起こり、窒素ガスが発生したり、亜硝酸がアンモニアに還元されます。一方、水田の稲はアンモニウムイオンの形で窒素を吸収します。近年、畑作物もペプチドやアミノ酸などの有機態窒素を吸収できることがわかってきました。大豆油粕や魚粕などは、こうした有機態窒素を含んでいます。
/** Geminiが自動生成した概要 **/
土壌分析は、畑全体の状況把握には費用対効果が低いと思われていたが、生育が悪かった箇所の土壌を分析することで、栽培者の施肥設計の癖を把握できる。土壌の良さは、各要素の量の多さではなく、バラつきの少なさで決まるため、生育の悪い箇所のデータから、無意識に投入しすぎている要素を特定できる。つまり、土壌の状態だけでなく、施肥の癖を知るために、バラつきのあるデータでも有効活用できる。
/** Geminiが自動生成した概要 **/
SOY CMSのブログカテゴリページで、カテゴリごとに画像や文章を出し分ける方法を紹介します。各カテゴリページに異なるコンテンツを表示するには、モジュール機能を活用します。モジュール内にPHPコードを記述し、`$htmlObj->mode == "_category_"`でカテゴリページかどうかを判断、`$htmlObj->label->getCaption()`で現在のカテゴリ名を取得します。switch文でカテゴリ名ごとにcaseを追加し、それぞれに表示したいHTMLをechoで出力します。モジュールタグ(`<!-- cms:module="モジュール名" -->`)をテンプレートに挿入すれば完了です。HTMLコメントタグで記述されるため、テンプレートをPHPで汚染しません。
/** Geminiが自動生成した概要 **/
SOY Shopの商品詳細ページ下部に、同カテゴリ商品一覧を表示する方法を解説。 パーツモジュールを追加し、IDを「parts.item_list」、モジュール名を「商品一覧モジュール」とする。 モジュール内では、商品詳細ページの場合のみ、表示商品のカテゴリIDを取得し、DAOで同カテゴリの公開商品を取得、`SOYShop_ItemListComponent`を用いて商品一覧ブロックを生成する。 商品詳細テンプレートに`shop:module="parts.item_list"`を記述し、内部に`block:id="item_list_by_detail"`と商品表示用のcms:idを記述することで、一覧表示を実現する。 カート追加機能も確認済。 パーツモジュールを活用すれば、簡単なプラグイン機能を開発可能。
/** Geminiが自動生成した概要 **/
SOY Shopで商品数が増えると、CSVでのカテゴリ編集が困難になる。特にカスタムフィールドを多用するとCSVファイルが肥大化し、作業効率が低下する。複数カテゴリ設定もSOY Shopでは非対応。
そこで、商品一覧画面で複数商品を選択し、一括でカテゴリを設定・変更・解除できる機能が開発された。このシンプルな機能追加により、カテゴリ分け作業が大幅に効率化される。ダウンロードはSOY CMSフォーラムにて提供されている。
/** Geminiが自動生成した概要 **/
SOY CMSで構築されたサイトを特定する方法を紹介。HTML出力のためソースコードからは判別不可。特有のNot Foundページ(/jfoewajfoiwaejflaleiofjwaefwaeのような無意味な文字列へのアクセス)の存在が手がかりとなる。また、ブログ記事URL(/article/記事タイトル)、月別(/month/YYYY/MM)、カテゴリ(/category/カテゴリ名)ページのURL構造も参考になる。その他、問い合わせフォームページのソースに"SOY_Inquiry"や"soy2_token"の文字列があれば、SOY CMSの可能性が高まる。
/** Geminiが自動生成した概要 **/
京都農販がウェブサイト公開を記念し、黒腐菌核病への画期的な取り組みを公開した。決定的な対処法がないこの病気に対し、土壌のpHを上げることで感染拡大を抑えるという仮説を立て、肥料選定が課題となった。消石灰は弊害が多いため却下され、著者の提案した炭酸苦土も採用されなかった。最終的に選ばれた重炭酸カリ(サンパワーカリ)の選定理由は京都農販の今後の発表に委ねられる。この事例は、施肥の組み合わせ次第で予想外の成果が得られる可能性を示唆しており、農業における更なるイノベーションへの期待を高めている。著者は現場で活躍する人々への支援を表明している。
/** Geminiが自動生成した概要 **/
SEO対策のカノニカルタグを、ページ毎に挿入する手間を省くため、パーツモジュールで自動生成する仕組みを作成した。 ブログページとそれ以外のページで処理を分け、ブログページでは記事、カテゴリ、月別アーカイブそれぞれのモードに応じてURLを生成。HTMLテンプレートに`<link rel="canonical" href="生成したURL">`を出力することで、どのページでも正しいカノニカルタグが自動で挿入されるようになった。 実際にカテゴリページで確認した結果、期待通りのURLが出力され、今後の作業効率化に繋がることが期待される。
/** Geminiが自動生成した概要 **/
SOY CMSのPHPモジュールを使用して、ブログページのサイドバーコンテンツを他のページでも表示できるようになった。最新の投稿、カテゴリー一覧、月別アーカイブを取得するロジックを実装し、表示を整形した。これにより、ブログページと同様のコンテンツを非ブログページでも表示できるようになった。また、使用したSOY2DAOFactoryとSOY2Logicはデータベース操作やロジック処理を行うために使用された。