ブログ内検索

micro:bitページ
とにかく速いブログサイトを目指す
検索キーワード:「AMP」
 

なぜ魚粉は三大旨味成分のイノシン酸が豊富なのだろう?

/** Geminiが自動生成した概要 **/
魚粉にイノシン酸が豊富なのは、魚の死後に筋肉中のATPが分解されて生成されるため。生きている魚にはほとんど存在しない。さらに、魚粉の製造過程である乾燥で水分が蒸発し、イノシン酸が濃縮されることも理由。野菜やキノコでイノシン酸の話題を聞かないのは、生成過程が異なるためと考えられる。

 

腐植酸とは何なのか?3

/** Geminiが自動生成した概要 **/
腐植酸生成の鍵となる酒石酸とポリフェノールに着目し、ワイン粕を用いた堆肥製造の可能性を探っている。ワイン熟成過程で生じる酒石酸と、ブドウ果皮に豊富なポリフェノールが、ワイン粕中に共存するため、良質な腐植酸生成の材料として期待できる。ワイン粕は家畜飼料にも利用されるが、豚糞由来の堆肥は他の成分を含むため、純粋なワイン粕堆肥の製造が望ましい。

 

スライム作りとホウ砂

/** Geminiが自動生成した概要 **/
小学生の息子がスライム作りに使うホウ砂について調べている。ホウ砂(Na₂[B₄O₅(OH)₄]·8H₂O)は水に溶けると四ホウ酸イオン(B₄O₇²⁻)を生じ、これが加水分解してホウ酸(H₃BO₃)になる。更にホウ酸は水と反応し、B(OH)₄⁻と平衡状態になる。水溶液はOH⁻の生成によりアルカリ性になる。スライム作りにおいて重要なのは四ホウ酸イオンの加水分解だが、詳細は後述。

 

塩基性暗赤色土を探しに京都の大江山へ

/** Geminiが自動生成した概要 **/
塩基性暗赤色土は、蛇紋岩や塩基性火成岩を母材とする弱酸性~アルカリ性の土壌です。赤褐色~暗赤褐色を呈し、粘土含量が高く、肥沃度は低い傾向にあります。ニッケルやクロムなどの重金属を多く含み、特定の植物しか生育できない特殊な土壌環境を形成します。 日本では、北海道、関東、中部地方などの蛇紋岩分布地域に局地的に分布しています。塩基性暗赤色土は、その特異な化学的性質から、植生や農業に影響を与え、特有の生態系を育んでいます。

 

最初に合成されるポリフェノールのコーヒー酸

/** Geminiが自動生成した概要 **/
コーヒー酸は、2つのヒドロキシ基を持つポリフェノールの一種です。その生合成は、芳香族アミノ酸のフェニルアラニンから始まります。フェニルアラニンはアミノ基を失ってケイヒ酸に変換され、さらにヒドロキシ基が付加されてクマル酸が生成されます。最後に、クマル酸にもう1つヒドロキシ基が付加されることで、コーヒー酸が合成されます。ケイヒ酸、クマル酸、コーヒー酸は植物において重要な化合物であり、その構造を理解しておくことは重要です。

 

縷紅の鮮やかな紅の花

/** Geminiが自動生成した概要 **/
この記事は、鮮やかな紅色の花を咲かせるつる性植物「マルバルコウ」について考察しています。著者はマルバルコウの見た目の特徴からヒルガオ科に属する植物と推測し、その花弁の色素について「ペラルゴニジン」というアントシアンの可能性を探っています。しかし、マルバルコウの花弁の色素に関する研究は少なく、結論には至っていません。また、「縷紅」という名前の由来についても考察し、紅色の花を咲かせるつる性植物であることに由来すると推測しています。

 

黒雲母帯とはどんな所?

/** Geminiが自動生成した概要 **/
京都府木津川市の黒雲母帯は、黒雲母と絹雲母を含む泥質千枚岩が変成作用を受けた地域です。この地域には菫青石も存在し、風化すると白雲母や緑泥石に変わり、最終的には2:1型粘土鉱物を構成する主要成分となります。菫青石の分解断面は花びらの様に見えることから桜石とも呼ばれます。木津川市で見られる黒ボク土は、これらの鉱物の風化によって生成された可能性があります。

 

栽培においてケイ酸塩鉱物の柘榴石は意識すべきか?

/** Geminiが自動生成した概要 **/
柘榴石はケイ酸塩鉱物の一種で、研磨剤や宝石のガーネットとして知られています。栽培において重要なかんらん石もケイ酸塩鉱物ですが、柘榴石はアルミニウムを含むため風化耐性が強く、かんらん石のように土壌中の養分供給源として期待できません。そのため、柘榴石の存在は栽培上、直接的な影響は少ないと考えられます。ただし、柘榴石を含む土壌は水はけや通気性が良い可能性があり、間接的に植物の生育に影響を与える可能性はあります。

 

改めて同型置換について見る

/** Geminiが自動生成した概要 **/
同型置換とは、粘土鉱物の結晶構造中で、Si四面体が壊れ、代わりにAl四面体が配置する現象です。Si四面体のSiはAlと置き換わるのではなく、結晶が壊れて再構成する際にAl四面体が組み込まれる形となります。壊れたSi四面体はSi(OH)4として水に溶けると考えられます。同型置換により結晶構造は負に帯電し、CEC(保肥力)が増大します。pHや温度が同型置換に影響を与える可能性があります。

 

造岩鉱物の角閃石を見る

/** Geminiが自動生成した概要 **/
鉱物の風化速度は結晶構造に影響されます。単鎖構造のケイ酸塩鉱物(例:輝石)は複鎖構造(例:角閃石)よりも風化に弱く、複鎖構造はさらに重合が進んだ環状構造(例:石英)よりも風化に耐性があります。これは、重合が進むほどケイ酸イオンが安定し、風化による分解に抵抗するためです。 そのため、角閃石は輝石やかんらん石よりも風化に強く、風化が進んでから比較的長い間、元の形態を保持できます。

 

稲作でケイ酸を効かせるにはどうすれば良いのか?

/** Geminiが自動生成した概要 **/
稲作でケイ酸を効かせるには、田に水を溜めた状態を保つことが重要です。ケイ素を含む鉱物が水に溶けてケイ酸イオンを放出するためには、大量の水が必要です。イネはケイ酸イオンを細胞に取り込み、細胞壁を強化して倒伏を防ぎます。 田から水を抜く期間を短くすることで、ケイ酸イオンの溶出とイネの吸収が促進されます。中干し期間を削減する稲作法では、ケイ酸を利用することで草丈を抑制し、倒伏を防止する効果が期待できます。

 

酢酸で10円硬貨をピカピカにしたい

/** Geminiが自動生成した概要 **/
銅などの金属は酸と反応して溶ける。この反応では、金属の表面の金属イオンが溶液中の酸と反応して、金属イオンの水和物(水に囲まれたイオン)となり、溶液中に放出される。一方、酸は水素イオンを失い、溶液中の水和水素イオンとなる。金属イオンと水和水素イオンが反応して、水素ガスを発生させる。この反応は、金属の表面に凸凹を作ったり、穴を開けたりするため、金属を溶かす。また、酸が濃ければ金属が溶ける速度も速くなる。

 

徳島三大カンキツの柚香

/** Geminiが自動生成した概要 **/
徳島にはスダチ以外にも「ユコウ」という香酸カンキツがある。ユコウは江戸時代にダイダイとユズの自然交配によって誕生したと推測されており、主に徳島県上勝町で栽培されている。ユコウはダイダイの血を引き継ぐため、古代史とはつながりが薄いと考えられる。しかし、柑橘類は話題が豊富であり、ユコウを調べることで興味深い内容にたどり着くことが期待できる。

 

徳島県の神山町は常世国と似ていたか?

/** Geminiが自動生成した概要 **/
神山町は、緑泥石帯に位置し、かつては海の一部だったと推測されています。その立地と地形から、常世国に似ていた可能性が考えられます。しかし、常世国に関する神山町との関連を裏付ける研究は現時点で確認されていません。

 

湘南の海岸で緑の石を見かけた

/** Geminiが自動生成した概要 **/
湘南の海岸で緑色の石が見つかり、緑色凝灰岩の可能性があることがわかった。丹沢山地には緑色片岩相が存在し、そこから相模川を通じて湘南の海岸に流れ着いたと考えられる。湘南の砂浜には、雲母や磁鉄鉱に加えて緑色凝灰岩も含まれている可能性がある。黒い砂は石英が少なく、土壌改良に適しているかもしれない。これは、青い石が出る園地は良いミカンができるという言い伝えや、砂浜の砂に含まれる栄養素が植物の生育に影響を与える可能性を示唆する過去の考察とも関連する。

 

茹でたツユクサを食した

/** Geminiが自動生成した概要 **/
妻が採取したツユクサを茹でて食べてみたところ、多少筋っぽかったものの、ほぼ苦味がなくスッキリとした甘みがあり美味だった。ツユクサは野草なのに、なぜ苦味成分であるポリフェノールが少ないのか疑問に思った。過去に書いた「ツユクサは細胞壁の構造が他の双子葉植物と異なる」という内容と何か関係があるかもしれない。

 

クズから作物の品種改良の偉大さを再認識出来た

/** Geminiが自動生成した概要 **/
この記事では、クズの可食部位を参考に、野菜の品種改良の偉大さを再認識しています。クズは若いつる先やつぼみ、花が食べられるものの、選別や収穫が大変です。一方で、サツマイモやエンサイは成長しても筋っぽくならず、ミズナやコマツナは収穫時期を選ばないため、作業効率が良いです。これらの野菜は、品種改良によって、クズのような野草に比べて栽培しやすくなっていることを実感させてくれます。

 

ツユクサの食用はイチオシであるらしい

/** Geminiが自動生成した概要 **/
ツユクサは、食べられる草ハンドブックでイチオシされている野草です。地上部の葉や茎が食用となり、見た目はエンサイに似ています。しかし、ツユクサは単子葉植物であり、ネギのような食感は想像しにくいです。実際に食してみると、エンサイのような食感が楽しめます。ツユクサは、おひたしや和え物、炒め物など、様々な料理に活用できます。また、乾燥させてお茶として楽しむことも可能です。

 

きんぴらに大薊

/** Geminiが自動生成した概要 **/
アーティチョークは、ヨーロッパやアメリカで人気のある野菜です。つぼみの部分が食用となり、独特の風味と豊富な栄養価が特徴です。アーティチョークには、抗酸化作用、コレステロール値の低下、肝臓の健康維持、消化促進などの効果があると期待されています。具体的な栄養素としては、ビタミンC、ビタミンK、葉酸、カリウム、食物繊維などが豊富に含まれています。アーティチョークは、蒸したり、茹でたり、グリルしたりと様々な調理法で楽しまれています。

 

たまごボーロには体調不良回復後のサプリメントのような可能性はあるか?

/** Geminiが自動生成した概要 **/
この記事は、体調不良時に不足する糖質コルチコイドの材料となるコレステロールを卵ボーロから摂取できるかを考察しています。 卵ボーロには卵黄が含まれていますが、主成分はジャガイモ澱粉等で卵は10%程度です。少量の摂取ではコレステロール不足を補う効果は期待薄ですが、お菓子なので過剰摂取も問題です。 むしろ注目すべきは「ルテイン卵」を使用している点です。ルテインは目に良いカロテノイドで、卵はその蓄積能力があります。原料にこだわることで、たまごボーロは高品質な食品になり得る可能性を秘めていると言えるでしょう。

 

副腎皮質ホルモンとは何か?の続き

/** Geminiが自動生成した概要 **/
副腎皮質ホルモンは、体内での働きによって鉱質コルチコイドと糖質コルチコイドに分類されます。鉱質コルチコイドは体内電解質バランスを、糖質コルチコイドはエネルギー代謝や免疫に関与します。ストレスを感じると糖質コルチコイドの一種であるコルチゾールが分泌されます。慢性的なストレスはコルチゾールの分泌過多を引き起こし、体内のコルチゾールが枯渇しやすくなる可能性があります。このコルチゾールの枯渇が、ストレスによる体調不良の一因と考えられます。

 

国生みの三番目の島の億岐

/** Geminiが自動生成した概要 **/
本文は、黒曜石の産地として知られる隠岐諸島に焦点を当てています。 古代、良質な黒曜石は貴重な資源であり、隠岐は主要な産地の一つでした。隠岐ジオパークのガイドブックでは、島内の神社の数や名前に基づき、黒曜石を求めて各地の有力者が隠岐に移住し、独自のコミュニティを形成した可能性を示唆しています。 著者は、隠岐の神社の存在が、黒曜石という資源と古代の人々の移動、そして文化形成に深く関わっているという興味深い考察に感銘を受けています。そして、隠岐諸島への訪問を切望しています。

 

紀州の梅

/** Geminiが自動生成した概要 **/
この記事は、和歌山の特産品である「紀州の梅」の歴史を通じて、和歌山の農業や地質について考察しています。 著者は、梅の歴史を調べ始めたところ、和歌山で梅の栽培が始まったのは江戸時代と意外に新しく、年貢の負担軽減のためにやせ地に強い「やぶ梅」が栽培されたことを知ります。 さらに、梅の栽培が盛んだった田辺市の地質を調べると、海成の砂岩や泥岩など、やせた土地が多いことが分かります。 記事では、梅の栄養価の高さや、やせ地に強いという特徴に注目し、今後の更なる調査への意欲を示唆しています。

 

昼間でも暗いと感じる程大きく育つ槻

/** Geminiが自動生成した概要 **/
かつて高槻は「高月」と呼ばれ、月弓神とスサノオノミコトを祀る社の名前が由来とされています。 高槻には、第26代継体天皇が埋葬されていると考えられている今城塚古墳が存在します。 「高月」から「高槻」に変わった理由は、室町時代に大きく成長したケヤキの木が由来とされています。 ケヤキはニレ科の落葉高木で、ツキやツキノキとも呼ばれます。 高槻の地名とケヤキの関係、そして古代史との関連性を紐解くことで、植物学と歴史の両面から新たな発見があるかもしれません。

 

もう一つの梓の楸

/** Geminiが自動生成した概要 **/
この記事は、弓の材料として知られる「梓」という漢字の由来について考察しています。現在「梓」と呼ばれる特定の木は存在せず、ミズメやキササゲなどが候補として挙げられています。 キササゲは薬効を持つ実が「梓実」と呼ばれていたことから、梓の候補となりました。その一方で、「楸」という美しい漢字も当てられています。 この記事では、キササゲのしなやかな枝が弓の材料に適していること、薬効を持つ実が「梓実」と呼ばれていたことから、「梓」と当てはめられた可能性を示唆しています。

 

梓弓こそが真の弓

/** Geminiが自動生成した概要 **/
梓弓は、古事記などで「真の弓」とされ、神事に用いられる特別な弓です。材料となる「梓」は、諸説ありますが、現在はカバノキ科のミズメと考えられています。 ミズメは傷つけるとサリチル酸メチルという芳香を放ち、この香りは魔除けの効果があると信じられてきました。神事に用いる弓に魔除けの力を見出すのは自然な流れと言えるでしょう。 なぜ「梓」に木偏の漢字が当てられていないのか、興味深い点は尽きません。

 

ベンゼン環を持つアミノ酸のチロシンはアレルゲンとなり得るか?

/** Geminiが自動生成した概要 **/
ミカンには、β-クリプトキサンチン、ノビレチン、タンゲレチンなどの機能性成分が豊富に含まれています。β-クリプトキサンチンは強い抗酸化作用を持ち、発がん抑制効果や骨代謝改善効果などが期待されています。ノビレチンとタンゲレチンはフラボノイドの一種で、特にミカン科の果物に多く含まれており、抗アレルギー作用や抗肥満効果などが期待されています。これらの機能性成分は、ミカンを摂取することで健康促進に役立つ可能性があります。

 

ヒトは鮭に含まれるカロテノイドを吸収できるか?

/** Geminiが自動生成した概要 **/
鮭のアスタキサンチンは、ルテインより極性が高くヒトへの吸収率が低いと考えられますが、実際には吸収されています。油性溶液にする等、吸収率を高める調理法が関係している可能性があります。もしそうであれば、オレンジのビオラキサンチンの吸収率も、調理法によって高まるかもしれません。

 

ヒトはオレンジジュースに含まれるカロテノイドを利用できるのか?

/** Geminiが自動生成した概要 **/
オレンジジュースとみかんジュース、カロテノイド摂取の観点からどちらが良いか。人間はルテインやβ-クリプトキサンチンなど特定のカロテノイドしか吸収できない。β-クリプトキサンチンはみかんに多く含まれる一方、オレンジに多いビオラキサンチンは吸収されにくい。よってカロテノイド摂取にはみかんジュースの方が効果的と言える。

 

紫ニンジンの色素は何だ?

/** Geminiが自動生成した概要 **/
紫ニンジンの紫色は、カロテノイドの一種であるフィトエンではなく、アントシアニンによるものです。アントシアニンはブルーベリーにも含まれる色素で、紫色の発色に関与します。一方、フィトエンは無色のカロテノイドです。通常の橙色や黄色のニンジンではアントシアニンの蓄積状況は不明ですが、紫ニンジンが根にアントシアニンを大量に合成することで何か利点があるのかは興味深いところです。

 

黄色いニンジンのカロテノイドは何だ?

/** Geminiが自動生成した概要 **/
黄色いニンジンは、β-カロテンが少ないため、薄い色をしています。記事では、β-カロテンからゼアキサンチンへの変化が示唆されていますが、検索しても確認できませんでした。実際には、黄色いニンジンはα-カロテンの比率が高い品種です。α-カロテンは黄色い色素で、β-カロテンとは異なるカロテノイドです。農研機構の研究によると、ニンジンにはα-カロテンとβ-カロテンが存在し、簡易的に分別定量する方法が開発されています。

 

常緑樹とカロテノイドの続き

/** Geminiが自動生成した概要 **/
常緑樹であるシラカシの落ち葉に黄色い色素が残ることから、常緑樹の落葉にはカロテノイドの分解は必須ではない可能性と、常緑樹の落葉メカニズムへの疑問が生じます。 常緑樹のクスノキは、日当たりの良い場所では葉が1年で半数落葉するそうです。これは、光合成時に発生する活性酸素による葉の老化が原因と考えられます。 活性酸素は細胞にダメージを与えるため、過剰に発生すると葉の老化を早めます。活性酸素がエチレン合成を誘導し、落葉を促進している可能性も考えられます。 今後の猛暑日増加に伴い、植物の酸化ストレスへの理解は重要性を増すと考えられます。

 

SOY CMSで$_SERVER["PATH_INFO"]の補完を追加しました

/** Geminiが自動生成した概要 **/
SOY CMS 3.14.0以降では、エックスサーバー等のサーバーで発生するPATH_INFOの自動付与による問題を解消しました。従来は「https://example.com/hoge」にアクセスすると「https://example.com/hoge?pathinfo=hoge」にリダイレクトされていましたが、最新版では内部処理でPATH_INFOを補完するため、リダイレクト無しで動作します。 自動付与機能を無効にする場合は、サイトの.htaccessファイルの末尾を以下のように変更してください。 **変更前:** ``` RewriteRule ^(.*)$ index.php?pathinfo=$1&%{QUERY_STRING} [L] ``` **変更後:** ``` #RewriteRule ^(.*)$ index.php?pathinfo=$1&%{QUERY_STRING} [L] RewriteRule ^(.*)$ index.php/$1 [L] ```

 

コリンは発根に対して有効か?

/** Geminiが自動生成した概要 **/
この記事は、コリンという栄養素が植物の発根に与える影響について考察しています。 著者はまず、リン酸欠乏状態の植物にホスホコリン(コリンを含む化合物)を与えると根の成長が回復するという研究結果を紹介し、植物がホスホコリンを直接吸収できる可能性を示唆しています。 さらに、ホスホコリンは大豆などに含まれるレシチンの構成成分であることから、大豆粕にホスホコリンが含まれている可能性に言及し、有機肥料としての活用に期待を寄せています。

 

植物はアミノ酸態窒素を吸収した後、どのように利用するか?

/** Geminiが自動生成した概要 **/
植物は吸収したアミノ酸態窒素を、光合成で得たアミノ酸の補填としてタンパク質や核酸の合成に利用します。 具体的には、グルタミンやアラニンなどのアミノ酸は、体内で様々なアミノ酸に変換された後、タンパク質や核酸の材料となります。 このことから、有機質肥料による食味向上は、アミノ酸態窒素が植物に直接吸収され、効率的に利用されるためと考えられます。

 

イワシのアミノ酸成分表を見てみる

/** Geminiが自動生成した概要 **/
魚粉肥料によく使われるイワシの成分表を見ると、旨味成分であるグルタミン酸、アスパラギン酸が多い一方で、苦味成分であるリジンも多い。もし、ネギがこれらの成分をそのまま吸収すると苦くなってしまうはずだが、実際はそうならない。つまり、魚粉肥料の効能には、単に成分が吸収される以上のメカニズムが隠されている可能性がある。

 

植物は地力窒素をどのように活用するか?

/** Geminiが自動生成した概要 **/
植物は根酸を使ってタンニンを分解し、凝集したタンパク質を分散させて地力窒素を活用する可能性があります。しかし、石灰過多の土壌では根酸が石灰と優先的に反応するため、タンニンの分解が阻害され、地力窒素の発現が低下する可能性があります。さらに、石灰過多は微量要素の溶脱も抑制するため、分散したタンパク質の無機化も遅延する可能性があります。つまり、石灰過多は地力窒素の活用を阻害する要因となる可能性があります。

 

窒素肥料の複雑さの続き

/** Geminiが自動生成した概要 **/
窒素肥料として有効な有機態窒素の一種である核酸は、発根促進効果も期待できる。イノシン酸を出発点に、イノシン、ヒポキサンチン、キサンチン、尿酸と分解が進み、最終的にアンモニア態窒素肥料である尿素に至る。この過程を通じて、発根を促しつつ、遅効性の窒素供給源としても機能する。土壌微生物の働きにより分解が進むため、肥効は緩やかで持続的である。

 

山形県の三盆地の成り立ちを探る

/** Geminiが自動生成した概要 **/
山形県はかつて海域だったが、約1500万年前から陸地化が始まりました。火山活動により奥羽山脈と出羽山地が隆起し、その間にあった盆地に火山噴出物や土砂が堆積し、現在の地形形成了されました。 地質図から判明した形成の順番は不明ですが、新庄市のシームレス地質図で確認できます。

 

香酸カンキツが持つポリメトキシフラボノイド

/** Geminiが自動生成した概要 **/
香酸カンキツ、特に新姫は、ポリメトキシフラボノイドの一種であるノビレチンを豊富に含み、これが動物実験で神経系に作用し、記憶学習能の向上などが示唆されています。 著者は、ノビレチンの効果と田道間守の不老長寿の伝説を結びつけ、その効能に納得を示しています。 しかし、香酸カンキツがなぜ動物に有益なノビレチンを合成するのか、その理由は不明であり、著者は昆虫への作用などを考察しています。

 

Selenium + php-webdriverでWebDriverCurlExceptionのエラーにハマった時の対処

/** Geminiが自動生成した概要 **/
Seleniumとphp-webdriverのバージョンアップ後にWebDriverCurlExceptionが発生した問題の解決策についての記事です。 ログイン・ログアウトを繰り返すテストコードで、三回目のログイン時にエラーが発生。調査の結果、セッションの破棄と再生成が必要であることが判明。php-webdriverのquitメソッドを用いてdriverを明示的にquitすることで解決しました。 記事では、エラー発生時の環境、テストコード、エラーメッセージ、解決策を詳細に記述しています。

 

ブラッドオレンジの赤紫の色素は何か?

/** Geminiが自動生成した概要 **/
プロテインバーにEルチンを配合する目的は、運動後の疲労回復促進効果を狙っているからです。 Eルチンはポリフェノールの一種で、ソバなどに含まれています。抗酸化作用や血管保護作用などが知られていますが、運動後の疲労回復を早める効果も期待されています。 プロテインバーは運動後に不足しがちなタンパク質を効率的に摂取できるため、Eルチンを配合することで、より効果的な疲労回復を目指していると考えられます。

 

甘夏ことカワノナツダイダイ

/** Geminiが自動生成した概要 **/
この記事は、大分県津久見市で生まれた柑橘類「甘夏」について解説しています。甘夏はナツミカンの一種で、酸味が少なく甘みが強いのが特徴です。 著者は、愛媛県のミカン栽培に適した地質「緑泥石帯」と甘夏の産地との関連性を調査しました。その結果、甘夏の産地である津久見市上青江は緑泥石帯ではなく、堆積岩や火成岩の地質であることがわかりました。 ただし、上青江の東側には石灰岩の産地である下青江が存在します。石灰岩は愛媛県のミカン産地である秩父帯にも存在することから、上青江の堆積岩に石灰岩が豊富に含まれている可能性が考えられます。

 

萩の武士とナツミカン

/** Geminiが自動生成した概要 **/
この記事は、山口県萩市とナツミカン栽培の関係について解説しています。江戸時代、萩に漂着した柑橘の種がナツミカンの起源となり、明治時代に失業武士の仕事として栽培が盛んになりました。萩市では今でも塀沿いにナツミカンが多く見られます。ナツミカンは夏に食べられる貴重な柑橘として高値で取引されました。萩市の地質は、城下町周辺に玄武岩などの苦鉄質岩石が多く見られる特徴があります。

 

奈良県の吉野にある宮滝遺跡

/** Geminiが自動生成した概要 **/
奈良県吉野にある宮滝遺跡は、縄文時代から飛鳥時代にかけての複合遺跡です。中央構造線の南側に位置し、緑泥石帯の上に位置しています。 宮滝遺跡周辺は段丘堆積物に覆われていますが、吉野川には緑泥片岩が多く見られます。これは、周辺の山々から流れ出た土砂が堆積した一方で、川の浸食作用によって地下の緑泥片岩が露出したためと考えられます。 宮滝遺跡のように、緑泥片岩は古墳時代の皇族と関連する場所にも多く見られます。古代の人々が、緑泥片岩を重要な意味を持つものとして認識していた可能性を示唆しています。

 

和歌山の元伊勢の濱宮

/** Geminiが自動生成した概要 **/
この記事は、和歌山県にある元伊勢「濱宮」について考察しています。濱宮は、垂仁天皇の命で常世国から持ち帰った橘を植えたと伝わる「六本樹の丘」からわずか6kmほどの場所に位置しています。 濱宮の歴史は垂仁天皇の時代よりも古く、田道間守が生きた時代にはすでに存在していた可能性があります。これは、当時すでに熊野古道またはその周辺の道が利用されていたことを示唆しています。 興味深いことに、濱宮の地質は緑泥石帯であることが判明しました。これは、美味しいミカンができる土壌として知られる緑泥石と関連づけて考察することができます。

 

ヤマトヒメは五十鈴川を見て何を感じたか?

/** Geminiが自動生成した概要 **/
ヤマトヒメが伊勢神宮の地を選んだ理由を、地質的な観点から考察しています。伊勢神宮は緑泥石帯に囲まれた場所にあり、付近の五十鈴川にも緑泥片岩が存在します。ヤマトヒメは、緑泥石帯の神秘的な雰囲気を感じ、アマテラスを祀るのにふさわしい場所だと直感したのではないでしょうか。緑泥石帯に位置する伊射奈美神社の存在も、この仮説を裏付ける根拠となりえます。日本人は古来より、緑泥石に特別な力を感じてきたのかもしれません。

 

お茶の品質日本一を輩出するところは緑泥石帯

/** Geminiが自動生成した概要 **/
福岡県八女市は品質の高いお茶の産地として知られていますが、その理由は土壌の質の良さ、特に緑泥石帯という地質にあります。緑泥石帯は、愛媛県のミカン栽培で有名な地域にも見られ、土壌の物理性と化学性に良い影響を与えると考えられています。つまり、その土地の地質(母岩)が、土壌の質を決め、ひいては農作物の品質にも大きく影響を与えると言えるでしょう。天候の影響を受けやすい農業において、母岩の重要性が認識されています。

 

愛媛のミカンが盛んなところは緑泥石帯

/** Geminiが自動生成した概要 **/
愛媛県は日本有数のミカン産地として知られていますが、特に八幡浜市の収穫量が突出しています。ミカンの栽培適地として石灰岩地帯が挙げられますが、八幡浜市は緑泥石帯に属しています。この記事では、愛媛県におけるミカンの栽培の歴史を紐解きながら、緑泥石帯とミカンの栽培の関係性について考察しています。愛媛県のミカン栽培は、江戸時代に持ち帰られた苗木に端を発しており、栽培に適した緑泥石帯の八幡浜市で特に盛んになったと考えられます。

 

ミカンに含まれる機能性成分

/** Geminiが自動生成した概要 **/
ミカンには、リラックス効果のあるGABAだけでなく、交感神経を興奮させる作用を持つシネフリンも含まれています。シネフリンは、アミノ酸のチロシンと似た構造を持つアルカロイドで、主にミカン科の果実に含まれています。 このように、ミカンは様々な物質を含み、単純に味が甘い、酸っぱいといったことだけでは判断できない複雑な果実と言えるでしょう。

 

シークヮーサーの園地は海が見える山のところ

/** Geminiが自動生成した概要 **/
提供された写真と地理情報から、沖縄県国頭村のシークヮーサー園地は、海が見える山間部に位置し、地質は緑色片岩である可能性が高い。 写真からは、園地と海の距離は比較的近く、山を下った先には海岸線が広がっていることがわかる。また、地理情報と近隣で見つかった緑色片岩の存在は、この地域一帯が同様の地質で構成されていることを示唆している。 これらの情報を踏まえると、田道間守が国頭村付近でタニブターを見つけた可能性は更に高まる。タニブターは、シークヮーサーと同様に温暖で水はけの良い土地を好むため、緑色片岩地帯は生育に適していたと考えられる。

 

下津のミカン

/** Geminiが自動生成した概要 **/
風邪の予防にミカンが良いと言われるのは、ビタミンCが豊富だからというのは実は誤解です。ミカンのビタミンCは100gあたり約35mgと、他の果物と比べて特別多いわけではありません。 ミカンの効能は、β-クリプトキサンチンという成分にあります。これは体内でビタミンAに変換され、免疫力を高める効果があります。 また、リモネンという香り成分にはリラックス効果があり、風邪の予防だけでなく、疲労回復やストレス軽減にも効果が期待できます。 つまり、ミカンはビタミンCだけでなく、様々な栄養素が豊富に含まれているため、風邪予防に効果的なのです。

 

常世の国から持ち帰った非時香菓を最初に植えた場所

/** Geminiが自動生成した概要 **/
和歌山県下津町にある橘本神社は、ミカンの原種である橘の苗木が植えられた場所として知られています。橘は、常世の国に生える不老不死の果実「非時香菓」とされ、持ち帰った田道間守は菓祖として信仰されています。 橘本神社の土壌は緑泥石帯であり、植物の生育に適した環境です。重要な果実である橘を確実に育てるためには、緑泥石の力が欠かせなかったと考えられます。 この記事では、橘と緑泥石の関係性について解説し、古代の人々が土壌の重要性を認識していたことを示唆しています。

 

プロテインバーにEルチンを配合する意図は何だ?

/** Geminiが自動生成した概要 **/
プロテインバーにEルチンを配合する目的は、筋肉量の増加を促進するためです。Eルチンは、酵素処理によって吸収率を高めたルチンのことです。ルチンはポリフェノールの一種で、活性酸素を除去する効果があります。 Eルチンを摂取すると、運動時の過剰な酸化ストレスを軽減し、筋疲労を抑えることで、筋肉量の増加を助ける可能性があります。 ただし、Eルチンによる筋肉増加のメカニズムはまだ完全には解明されていません。

 

国生みの二番目の島の伊予之二名島

/** Geminiが自動生成した概要 **/
「国生み」の二番目の島「伊予之二名島」の女神オオゲツヒメを祀る神社は、徳島県神山町にある緑泥石帯に位置する上一宮大粟神社です。また、イザナミを祀る伊射奈美神社は、かつては緑泥石帯の山から流れる川と吉野川が合流する中洲にありました。吉野川は日本三大暴れ川の一つですが、この危険な場所に神社が建っているのは、緑泥石が自然に集まる場所に神社を建立したためではないかと思われます。

 

西の仁多米、東の魚沼コシヒカリ

/** Geminiが自動生成した概要 **/
仁多米の生産地である奥出雲町は、花崗岩が多く、特に鬼の舌振に見られる粗粒黒雲母花崗岩は風化しやすく、鉄分を多く含んでいます。この鉄分が川を赤く染め、水田にミネラルを供給している可能性があります。さらに、土壌中の黒雲母も風化によってバーミキュライトを生成し、稲作に良い影響を与えていると考えられます。これらの要素が、仁多米の高品質に寄与していると考えられ、他の地域での稲作のヒントになる可能性があります。

 

天沼矛のモデルとなった上立神岩

/** Geminiが自動生成した概要 **/
本書は、日本神話である古事記と日本書紀を、地図を用いて分かりやすく解説した一冊です。難解な神話の世界を、地理的な視点から読み解くことで、古代の人々の思考や文化、歴史への理解を深めます。 特に、神話の舞台となった場所を地図上で確認できるため、物語の展開をよりリアルに感じ取ることができます。また、各エピソードに関連する神社仏閣や史跡などの情報も掲載されており、旅のお供にも最適です。 従来の難解な解説書とは異なり、地図と豊富なビジュアルによって、古事記と日本書紀の世界をより身近に感じられる内容となっています。

 

SOY CMSでCMSタグチェックプラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY CMSのテンプレート編集で発生する、CMSタグの閉じタグ忘れによるエラーを防止するプラグイン「CMSタグチェックプラグイン」の紹介記事です。 記事では、CMSタグの閉じタグ忘れが原因で発生するエラーとその修正方法、タグが増えることによる確認作業の煩雑さを解説し、このプラグインによってタグの記述ミスをテンプレート更新時に検知できることを説明しています。 プラグインの導入により、製作時間の短縮などのメリットがあると期待されます。

 

ジャーガルとサトウキビ

/** Geminiが自動生成した概要 **/
沖縄本島北部にある玄武岩地帯から、土壌改良に有効なモンモリロナイトが得られるのではないかと考え、調査しました。その結果、沖縄本島中南部の丘陵地に分布する「ジャーガル」という土壌にモンモリロナイトが豊富に含まれていることがわかりました。ジャーガルは排水性が悪いものの、サトウキビ栽培に適した栄養豊富な土壌です。今回の調査では、玄武岩地帯との関連は見られませんでしたが、土壌有機物の蓄積対策として、ジャーガルが有効である可能性が示されました。

 

沖縄の土を地質と合わせて確認してみる

/** Geminiが自動生成した概要 **/
この記事は、沖縄の土壌と地質の関係を考察しています。まず、沖縄本島南部を例に、土壌図と地質図を比較しました。土壌図では未熟土が多いのに対し、地質図では石灰岩の分布は予想より狭く、未熟土の成因に疑問が生じました。 そこで土壌図を拡大したところ、石灰岩地域は石灰性暗赤色土、それ以外は低地土やグライ土と分類されていました。つまり、石灰岩以外の付加体が未熟土の基盤となっている可能性があります。 結論として、沖縄本島では石灰岩の影響は限定的で、未熟土の成因には他の要因も考えられると示唆しました。

 

沖縄の土を日本土壌インベントリーで確認してみる

/** Geminiが自動生成した概要 **/
沖縄の土壌は、北部・中部では赤黄色土、南部では未熟土が分布しています。赤黄色土は風化が進み、植物の生育に必要な栄養分が少ない土壌です。元は未熟土でしたが、風化によって赤黄色土になったと考えられます。未熟土は、赤黄色土よりも風化が進んでいない土壌です。沖縄の土壌の多くは、風化が進んだ状態であることが分かります。

 

ブルーベリー由来のアントシアニンの摂取は目に良い効果をもたらすのか?

/** Geminiが自動生成した概要 **/
ブルーベリー由来のアントシアニンは、網膜の炎症を軽減し、光受容体であるロドプシンの減少を抑制する抗酸化作用があります。これらの効果により、目の健康を維持し、視力低下を防ぐことが示唆されています。 アントシアニンは植物が光ストレスから身を守るために合成するフラボノイドの一種です。過剰な光を吸収し、活性酸素の発生によるダメージを防ぐ働きがあります。 それゆえ、ブルーベリーのサプリメントの摂取は、現代社会における青色光による光ストレスに対抗し、目の機能を維持するのに役立つ可能性があります。

 

末延農園さんのReaper Death麺を食べてみた

/** Geminiが自動生成した概要 **/
末延農園さんの「Reaper Death麺(激辛)」は、想像を絶する辛さでした。普段から辛い物に強い私でも、涙と汗が止まらないほどの激辛です。 袋には「内蔵が弱い人や明日大事な予定がある人は食べてはいけない」と注意書きがありますが、まさにその通り。ドライアイが一時的に解消されるほどの辛さは、もはや罰ゲームレベルです。 この辛さの秘密は、世界一辛い唐辛子「キャロライナ・リーパー」。末延農園さんでは、国産キャロライナ・リーパーの栽培から加工・販売までを一貫して行っています。 「Reaper Death麺」はAmazonで購入可能です。辛い物好きの方は、ぜひ挑戦してみてください!

 

ChromecastでSteam Linkを試してみた

/** Geminiが自動生成した概要 **/
著者は、Chromecast with Google TVでSteam Linkを使ってゲームができるか検証しました。しかし、ゲーム動作がカクカクしてしまい、原因を調査。ネットワーク速度を向上させるためにイーサネットアダプターを導入しましたが改善されず、Chromecastのスペック不足が原因と推測しました。そこでRaspberry Pi 4Bで試したところ、スムーズに動作。Chromecastのメモリ容量が影響している可能性を指摘し、他のスペックのマシンでの検証を希望しています。 追記として、Chromecastの後継機であるGoogle TV Streamerでも同様の検証を行った記事へのリンクが掲載されています。

 

【SEO対策】Bootstrapを利用しつつ、Core Web Vitalsのスコアを改善する

/** Geminiが自動生成した概要 **/
この記事は、Bootstrapを用いてWebサイトのCore Web Vitalsスコアを向上させる方法を解説しています。具体的には、BootstrapのボタンコンポーネントのCSSのみを抽出し、ページHTMLにインライン挿入する方法を紹介しています。 手順としては、Bootstrapのソースファイルから必要なSCSSファイルをサイトディレクトリに配置し、SOY CMS側でSCSSコンパイルの設定を行います。これにより、ボタン用のCSSがページに直接記述され、外部ファイルの読み込みが不要になります。 さらに、生成されたCSSを圧縮してインライン化することで、ページ表示速度の向上を目指します。ただし、毎回SCSSをコンパイルするのは非効率なので、CSSやページ全体のキャッシュ化が推奨されています。

 

SOY CMSとSOY ShopでPHP8.2系に対応しています

/** Geminiが自動生成した概要 **/
SOY CMSとSOY Shopは近日リリース予定のPHP8.2に対応します。主な修正点は、文字列中の変数展開における `${var}` の非推奨化と、未定義プロパティへの動的アクセスに関するものです。前者は `"sample_".$hoge` のように文字列を分割、後者はプロパティを事前に定義することで対応できます。これらの修正はPHP7系でも有効です。PHP8.2対応版は公式サイトからダウンロード可能です。PHP7系をご利用の方は、そのままでも動作に問題ありません。

 

田の酸化還元電位の続き

/** Geminiが自動生成した概要 **/
田んぼの土壌の物理性が改善すると、腐植やヤシャブシ由来のポリフェノールが増加し、硫酸よりも還元されやすい状態になるため、硫化水素の発生が抑制されると考えられます。 ポリフェノールは、重合するとタンニンや腐植物質を形成し、土壌中で分解される際にカテキンなどの還元力の高い物質を生成する可能性があります。 また、土壌の物理性改善は、稲の根の成長を促進し、鉄の酸化や硫酸の吸収を促す効果も期待できます。これらの要因が複合的に作用することで、土壌中の酸化還元電位が変化し、硫化水素の発生が抑制されると考えられています。

 

SOY CMSのブログ記事JSON出力プラグインで記事一覧の出力に必要な値を取得できるようにしました

/** Geminiが自動生成した概要 **/
SOY CMSのブログ記事JSON出力プラグインがアップデートされ、記事一覧の出力が容易になりました。 今回のアップデートにより、JSON出力に以下の値を含めることが可能になりました。 * 記事のパーマネントリンク * 本文の一部または冒頭数文字 * サムネイル画像のパス * カスタムフィールドの値 これらの値はGETパラメータで出力の有無を指定できます。これにより、JavaScriptでJSONを取得し、記事一覧を動的に生成することが可能になります。 例えば、記事のURL、本文の冒頭50文字、サムネイル画像のパスを含めたJSONを取得する場合は、以下のようなURLでアクセスします。 ``` https://example/site/1.json?limit=1&content=50&is_url=1&thumbnail ``` アップデート版のプラグインは、以下のサイトからダウンロードできます。 https://saitodev.co/soycms/

 

フェニックスのタネの大きさはどれくらい?

/** Geminiが自動生成した概要 **/
記事は、道路の隙間に生えたヤシのような植物を見て、単子葉木本の種はどれくらい小さいのか?という疑問から、単子葉木本の代表であるフェニックス(カナリーヤシ)の種の大きさを調べたものです。 調査の結果、フェニックスの種はペットボトルキャップより少し小さい2cm程度であることがわかりました。道路の隙間から生えるには少し大きいものの、不可能ではない大きさです。 ただし、最初の植物が本当に単子葉木本であるかは不明であり、今後の課題として残されています。

 

コリンは生体内でどこにある?

/** Geminiが自動生成した概要 **/
コリンは、卵黄やダイズに豊富に含まれるホスファチジルコリンという形で存在します。ホスファチジルコリンはリン脂質の一種であり、細胞膜の主要な構成成分です。リン脂質は細胞膜の構造維持だけでなく、酵素によって分解されることでシグナル伝達にも関与しています。つまり、コリンは細胞膜の構成要素として、またシグナル伝達物質の原料として、生体内で重要な役割を担っています。

 

コリンとは何だろう?

/** Geminiが自動生成した概要 **/
コリンはアメリカのFDAでビタミン様物質として扱われる重要な栄養素です。細胞膜の構造維持、神経伝達物質アセチルコリンの前駆体、メチル基代謝への関与といった役割があります。特にアセチルコリンは記憶や学習に深く関わり、脳の海馬などで重要な役割を果たします。コリンはとろろにも含まれており、記憶力増強効果が期待できます。コリンは脳の健康に欠かせない栄養素と言えるでしょう。

 

SOY CMSで一つ深い階層にサイトを作成する

/** Geminiが自動生成した概要 **/
SOY CMSで、サイトを一つ深い階層に作成する方法を解説します。 まず、サイトIDを「hoge」として、/var/www/html/hogeにサイトを作成します。次に、/var/www/html/hoge/huga のように、hugaディレクトリを作成し、必要なファイルを配置します。 データベースのSiteテーブルを開き、サイトIDが「hoge」のレコードのurlとpathを、それぞれ `http://example.com/hoge/huga/` と `/var/www/html/hoge/huga/` に変更します。 最後に、/var/www/html/hoge/huga/.htaccess の RewriteBase を `/hoge/huga` に変更します。 稼働中のサイトのURLを変更する場合は、上記の手順に加えて、SOY CMS管理画面でサイトURLを変更する必要があります。

 

golangのunsafeパッケージで配列の操作をしてみる

/** Geminiが自動生成した概要 **/
## プログラミング教育で注目すべきはARM + Debian + Pythonであるはずだ **要約** 近年、プログラミング教育の重要性が高まる一方で、環境構築の難しさや高額な機材が課題となっています。そこで注目すべきは、安価で入手しやすい「Raspberry Pi」を教材として活用することです。 Raspberry PiはARMアーキテクチャを採用した小型コンピュータで、DebianベースのOSが動作します。Pythonは初学者にも扱いやすい言語として人気があり、Raspberry Piとの相性も抜群です。 Raspberry PiとPythonを組み合わせることで、電子工作やIoTなど、実用的で興味深い教材を開発できます。さらに、Linuxやオープンソースの文化に触れることで、生徒の技術的な興味関心をさらに広げることが期待できます。

 

植物性の食品に多く含まれる非ヘム鉄はどんな形?

/** Geminiが自動生成した概要 **/
植物性食品に多い非ヘム鉄は、主に鉄硫黄タンパクという形で存在します。これは光合成で重要な役割を果たすタンパク質で、鉄と硫黄(システイン由来)から構成されています。鉄硫黄タンパクは電子伝達体として機能し、光合成過程で水から得られた電子を他の器官に運搬します。非ヘム鉄はヘム鉄に比べて吸収率が低いですが、ビタミンCなどの還元剤と共に摂取することで吸収が促進されます。

 

SOY CMSでブログ記事JSON出力プラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY CMS用ブログ記事JSON出力プラグインが登場!非同期で記事一覧を表示したいという要望に応え、軽量でサーバ負荷の少ないJSON出力を実現しました。ページャ機能もGETパラメータで簡単に実装できます。 例えば、10件ずつ記事を表示する場合、以下のURLでアクセスできます。 - https://saitodev.co/2.json?limit=10&offset=0 - https://saitodev.co/2.json?limit=10&offset=1 その他便利な機能も充実!詳細はSOY CMSプラグイン詳細画面をご覧ください。ダウンロードは https://saitodev.co/soycms/ からどうぞ。

 

OpenStreetMap API版Soil & Geoロガー

/** Geminiが自動生成した概要 **/
「Soil & Geoロガー」がOpenStreetMap APIを使って改良されました。以前はGoogle Maps APIを使用していましたが、OpenStreetMap APIに切り替え、地図表示と位置情報の取得を簡素化しました。これにより、地図上の任意の場所をクリックするだけで、その地点の緯度経度を取得し、土壌情報と地質情報へのリンクを生成します。さらに、オフライン機能を提供していたIndexedDBとサービスワーカーAPIは、インターネット接続環境の向上により廃止されました。この改良により、土壌情報と地質情報へのアクセスが容易になり、施肥設計や地域資源の活用に役立ちます。

 

ショートは危険2

/** Geminiが自動生成した概要 **/
この記事では、電子回路におけるショート(短絡)について解説しています。抵抗が並列に接続された回路において、片方の抵抗値が0Ωになると、電流は抵抗の低い経路に集中して流れます。 これは電流が流れやすい道を選ぶという性質によるものです。結果として、抵抗がない部分に電流が集中し、ショートした状態と同じになります。 このように、抵抗値が極端に低い箇所があるとショートが発生し、回路の故障や発熱などの問題を引き起こす可能性があります。

 

トランジスタ4増幅率

/** Geminiが自動生成した概要 **/
この記事では、トランジスタ、特にNPN型トランジスタの増幅率について解説しています。トランジスタの性能指標として、絶対最大定格、コレクター電流、ベース電流、増幅率(hFE)の4つが挙げられています。 増幅率はトランジスタによって異なり、ランク分けされています。記事で例に挙げられている2SC1815-GRはGRランクで、増幅率は200~400倍です。つまりベース電流が5mAなら、コレクター電流は1Aになる計算となります。 ただし、ベース電流の最大値はデータシートに記載がないため、コレクター損失(400mW)を考慮して、安全な電流値を見積る必要があると指摘しています。

 

トランジスタ3電流増幅作用

/** Geminiが自動生成した概要 **/
この記事では、トランジスタの増幅作用、特に電流増幅作用について解説しています。トランジスタは、小さな電流を大きな電流に増幅することができます。 具体的には、NPNトランジスタを例に、ベースにマイクロビットからの微弱な電流を流すことで、コレクタ-エミッタ間に大きな電流を流せることを説明しています。 そして、この電流増幅作用を利用して、マイクロビットからの信号では光らせることのできないLEDを、トランジスタを介することで光らせることができるようになることを図解しています。

 

Pythonでビット演算子の論理積に触れる

/** Geminiが自動生成した概要 **/
今回の記事では、Pythonのビット演算子の一つである論理積(&&)について解説しています。論理積は2つの値の両方が1の場合にのみ1を返す演算です。 記事では、変数 `cmdout` と16進数 `0x80` の論理積を計算するコードを例に挙げています。`cmdout` は、前の処理で192(2進数で `0b11000000`)に設定されています。`0x80` は10進数で128、2進数で `0b10000000` です。 これらの論理積をとると、`0b10000000` となり、これは10進数で128です。 記事では、この計算がSPI通信でのデータ送受信に関連していることを示唆していますが、具体的な意味についてはまだ明らかにされていません。 最後に、論理積を表す電子回路の記号も紹介されています。

 

NodeMCUでHTTP GETリクエストを試してみた

/** Geminiが自動生成した概要 **/
NodeMCUを使ってHTTP GETリクエストを試行した記録です。 記事では、MicroPythonのソケット通信を使って"http://www.example.com/"にGETリクエストを送信し、"200 OK"レスポンスとHTMLを取得できました。 しかし、"https://saitodev.co/"のようにHTTPSのURLでは失敗しました。これは、HTTPS通信に対応するためにコードを修正する必要があるためです。 記事では、将来WiFi経由でデータ送信を行う際にHTTPS通信が必要になると述べています。

 

PH4502CのpHの計算方法を調べる

/** Geminiが自動生成した概要 **/
この記事は、PH4502C pHメーターのpH計算方法を解説しています。まず、起電力とpHの関係式を求めるために、既知のpH値と対応する起電力値から係数と定数を算出します。次に、ADCを用いる場合の計算式を導出し、ADCのビット数とpHの関係式を確立します。最終的に、任意のADCビット数に対して、ADC出力値からpH値を計算する式を提示しています。ただし、精度の高い測定には電圧計を用いたキャリブレーションが必要であると結論付けています。

 

AD変換器から出力されたデジタル値を読み込む

/** Geminiが自動生成した概要 **/
この記事では、AD変換器を使ってアナログ値をデジタル値として読み取る方法を解説しています。AD変換器からのデータ送信には、複数のピンを使ったSPI通信という方式が使われています。SPI通信では、マスター(Raspberry Pi)とスレーブ(AD変換器)間でデータのやり取りが行われます。重要な点は、AD変換器からのデジタルデータは1本のピンではなく、SCLK、MISO、MOSI、SSの4本のピンを使ってやり取りされることです。

 

AD変換器の概要に触れる

/** Geminiが自動生成した概要 **/
diymoreのLiquid PH Value Detection Detect Sensor Moduleは、Arduinoやマイクロコントローラと連携して水溶液のpH値を測定するセンサーモジュールです。pH測定範囲は0~14で、精度は±0.1pHです。動作電圧は3.3~5Vで、出力はアナログ信号とTTLレベルのデジタル信号の両方を選択できます。校正は付属の校正液を用いて簡単に行えます。このモジュールは、水耕栽培、水質監視、化学実験など、pH値の測定が必要な幅広い用途に最適です。

 

リトマス試験紙は植物等が持つpHで色が変わる色素を利用する

/** Geminiが自動生成した概要 **/
花の色を決める4大色素とは、カロテノイド、アントシアニン、フラボノイド、ベタレインのこと。カロテノイドは黄~橙色、アントシアニンは赤~青紫、フラボノイドは白~黄色、ベタレインは赤~黄色を呈する。これらの色素の種類や量、さらには細胞のpHや金属イオンとの結合によって、花の色は多様に変化する。例えば、アジサイの色が土壌のpHによって変化するのは、アントシアニンと金属イオンの結合状態が変わるためである。

 

大豆肉に注目している

/** Geminiが自動生成した概要 **/
著者は、環境負荷の高い畜産肉に代わる大豆ミートに注目しています。牛肉生産は、飼料穀物や森林伐採、温室効果ガス排出など環境問題を引き起こします。そこで、大豆を原料とする大豆ミートは、二酸化炭素排出量削減に貢献できる代替肉として期待されています。著者は、水田転作で大豆栽培が進む中、中干し不要農法が大豆生産の効率化に役立つと考え、今後の記事で詳しく解説していく予定です。

 

PHP8でMacabを使い、任意の文字列の読み方を取得する

/** Geminiが自動生成した概要 **/
PHP8でMeCabを使い、文字列の読み方を取得する方法について記述されています。PHP拡張のphp-mecabがPHP8では動作しないため、exec関数でMeCabコマンドを実行し、出力結果を解析することで読み方を取得しています。「初心者用シューズ」を例に、カタカナで「ショシンシャヨウシューズ」、ひらがなで「しょしんしゃようしゅーず」と出力するコードが紹介されています。Ubuntu 20.04、PHP 8.0.10環境で動作確認済みです。PHP8で動作するMeCabライブラリがあればより良いと述べています。

 

煮出しした麦茶が泡立った

/** Geminiが自動生成した概要 **/
麦茶を煮出し、冷やしたものを容器に注ぐと泡立つことがある。これはサポニンによる界面活性作用だけでなく、麦茶に含まれるアルキルピラジン類の化合物も影響している。カゴメの研究によると、この化合物は焙煎時のメイラード反応で生成され、血液流動性向上作用を持つ。つまり、麦茶の泡立ちと香ばしさは、健康 benefits に繋がる成分によるものと言える。メーカーによって泡立ち具合が違うのは、アルキルピラジン類の含有量が違うためと考えられる。

 

SOY CMS / SOY ShopでライブラリをCDN経由にする設定を追加しました

/** Geminiが自動生成した概要 **/
SOY CMS/Shopの管理画面で利用するjQueryやBootstrapをCDN経由で読み込む設定が追加されました。これにより、管理画面で読み込むファイル数を減らし、サーバー負荷を軽減します。設定方法は、`/CMSインストールディレクトリ/common/config/user.config.php`を作成し、`define("SOYCMS_READ_LIBRARY_VIA_CDN", true);`を有効にするだけです。リンク色の変更など、一部表示に影響が出る可能性がありますが、順次修正予定です。最新のパッケージはサイト(saitodev.co/soycms/)からダウンロードできます。

 

Google Maps APIのジオコーディングのコードをOpenStreetMapのNominatimで書き換えてみた

/** Geminiが自動生成した概要 **/
Google Maps APIのジオコーディングをOpenStreetMapのNominatimに書き換えた。エンドポイントとJSONレスポンスの差異に対応するだけで比較的容易に移行できた。NominatimはAPIキー不要で回数制限もない。しかし、Google Maps APIと比べて検索速度が遅く、曖昧な地名検索の精度や郵便番号検索の網羅性で劣る。Google Maps APIは検索速度と精度の面で優れているが、費用と回数制限が課題となる。Nominatimは無料だが、パフォーマンスに課題があるため、用途に応じて使い分ける必要がある。

 

SOY CMSのモジュールで公開期限付きのcms:ignoreのようなものを作成してみる

/** Geminiが自動生成した概要 **/
SOY CMSで公開期限付きcms:ignoreを実現するモジュールの作成方法を解説。指定期間内のみコンテンツを表示する機能で、`/ドキュメントルート/サイトID/.module/parts/ignore.php`にPHPコードを記述する。コードでは`mktime`と`time`関数で期間を指定し、`addModel`で表示条件を設定。テンプレートには`<!-- cms:module="parts.ignore" -->`等を記述して使用する。SOY Shopでは`soycms_ignore`を`soyshop_ignore`に、`cms:module`を`shop:module`に変更すれば利用可能。

 

アブシジン酸は根以外でも合成されているか?

/** Geminiが自動生成した概要 **/
植物の気孔開閉は、根で合成されるアブシジン酸だけでなく、葉でも合成されることがわかった。葉でのアブシジン酸合成は、光ストレスによる活性酸素の発生を抑えるためと考えられる。合成経路は、カロテノイドの一種であるゼアキサンチンから数段階の酵素反応を経て行われる。このゼアキサンチンは、過剰な光エネルギーの吸収を防ぐキサントフィルサイクルにも関わっている。乾燥していない環境下でも、過剰な日光によって葉でアブシジン酸が合成され気孔が閉じると、光合成の効率が低下し生産性のロスにつながる可能性がある。

 

トマト果実の割れを回避するために気孔の開閉を考える

/** Geminiが自動生成した概要 **/
トマト果実の割れ防止対策として、葉の気孔に着目。気孔はCO2吸収と蒸散のバランスを保つため開閉し、孔辺細胞のカリウムイオン濃度変化と膨圧が関与する。日中はCO2獲得と水損失のバランス調整が重要。気孔開閉機構の詳細は不明だが、カリウムイオンが孔辺細胞に出入りすることで水の移動が起こり、気孔が開閉する。トマト栽培ではカリウム不足が懸念され、これが気孔開閉に影響し、微量要素吸収阻害など品質低下につながる可能性が考えられる。

 

SOY CMS / SOY ShopでファイルのアップロードをMIMEタイプで制限できる設定を追加しました

/** Geminiが自動生成した概要 **/
SOY CMS/SOY Shopで、ファイルアップロード時のMIMEタイプ制限設定が追加されました。ユーザー要望に応え、記事作成、テンプレート、elFinderからのアップロード時に、JavaScriptファイルの許可やPDFの禁止等が可能になります。従来のバージョンアップでカスタマイズが消える問題も解消。設定は、`/CMSインストールディレクトリ/common/config/upload.config.php.sample`を`upload.config.php`にリネームし、許可するMIMEタイプを`$mimetypes`配列に追加するだけです。最新パッケージはサイト(https://saitodev.co/soycms/)からダウンロード可能です。

 

ChromebookでPythonのmatplotlibを試してみた

/** Geminiが自動生成した概要 **/
ChromebookでPythonの数学ライブラリNumPyと可視化ライブラリmatplotlibの動作検証を行いました。ASUS Chromebook Detachable CM3で、Linux環境を利用し、`sudo apt install`コマンドで必要なパッケージをインストールしました。TkinterのGUI表示、及び以前作成したmatplotlibを使ったコードの実行に成功。Windows10のWSL2環境ではGUI表示ができなかった一方で、Chromebookでは問題なく動作しました。今後はデータサイエンス向けプラットフォームAnacondaのChromebookでの動作検証も検討しています。

 

ARM版ChromebookにDropboxをインストールする

/** Geminiが自動生成した概要 **/
ARM版ChromebookでLinuxアプリのDropboxを使うには、.debパッケージが使えないためDbxfsを利用する。pip3でDbxfsをインストール後、Dropboxフォルダを作成し、dbxfsコマンドを実行。表示されるURLにアクセスし、Dropboxにログインして認証コードを取得、端末に入力する。パスフレーズを設定すれば、Linuxファイル配下でDropboxのファイルが操作可能になる。Android版DropboxはChromebookのFilesのLinux共有に対応していないため、この方法が必要。

 

樟脳を抽出するためにクスノキは植えられた?

/** Geminiが自動生成した概要 **/
クスノキは、樟脳(しょうのう)と呼ばれる香料を抽出するために海外から持ち込まれた。樟脳は葉や枝から得られ、血行促進や鎮痛、消炎、鎮痒、清涼感などの作用を持つ。融点と沸点が高いため、花の香りとは異なる成分と考えられる。一方、クスノキの花は小さく目立たないものの、良い香りを放つ。花の香りの成分は樟脳とは別の物質で、その正体は不明。香料開発者は常にこのような香りの成分について探求している。

 

センセイトークのオンライン版を開発しました

/** Geminiが自動生成した概要 **/
センセイトークは、学校関係者の協働促進を目的とした対話型カードゲームをオンライン化したものです。Zoom等の画面共有機能を活用し、参加者はスマホ等でアバターを操作しながら、共有デッキ上のトークテーマに基づき会話を行います。テストプレイでは、デッキ上の文章が話の整理に役立ち、画面共有に視線が集中することで、ストレスなく話せるという意見がありました。これは、スタンフォード大が指摘する「Zoom疲れ」の原因、「視線の多さと顔サイズの大きさ」「自分自身を見続けること」「大げさなジェスチャーの必要性」を同時に解決する可能性を示唆しています。センセイトークは、Web会議を円滑にするアイデアを秘めているかもしれません。

 

ヤマブキの花弁の色素は何だ?

/** Geminiが自動生成した概要 **/
ヤマブキの花弁の色素について調べた結果、岐阜大学の資料ではカロテノイドとされているが、和ハーブ協会のサイトではヘレニエン、ルチン、パルミチン酸と記載されていた。パルミチン酸は脂肪酸であり、ルチンは蕎麦に含まれるフラボノイドの一種。ヘレニエンは光や酸素に不安定なカロテノイドで目薬に利用される。ヤマブキとルチン、ヘレニエンの関連性は情報が少なく不明。花弁の先端の白化はヘレニエンの不安定性と関連があるかもしれないが、確証はない。

 

赤紫蘇の色が気になった

/** Geminiが自動生成した概要 **/
赤紫蘇の色素について調べたところ、シソニンとマロニルシソニンというアントシアニン系の色素であることがわかった。マロニルシソニンは、赤色のアントシアニンであるフラビリウムにマロン酸と糖が結合した構造をしている。複雑な糖の付加により、pH変化による変色が抑えられ、シソジュースの安定した赤色に繋がっていると考えられる。この構造が健康効果にも寄与している可能性がある。

 

Let's Encryptでwwwありなしに対応する

/** Geminiが自動生成した概要 **/
Let's Encryptを用いて、wwwあり(www.example.com)なし(example.com)両方のドメインでhttpsアクセスを実現する方法。Ubuntu 18.04、Apache2環境を前提とする。 まず、certbotをsnapでインストールし、example.comのhttps化を行う。その後、www.example.comの証明書取得のため、`certbot certonly --webroot`コマンドを実行(webroot-pathはドキュメントルート)。最後に、Apacheの設定ファイル(000-default-le-ssl.conf)にwww.example.comのVirtualHost設定を追加し、example.comへのリダイレクトを設定、Apacheを再起動する。

 

SOY CMSでカスタムフィールドアドバンスド イメージフィールドコピープラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY CMSのカスタムフィールドアドバンスドで画像フィールドを使用する際、alt属性を含めて複数箇所に表示したい場合の課題を解決するプラグインが開発されました。標準機能では、2回目以降の表示に`cms:id="img*"`を使用するとalt属性が出力されない問題がありました。このプラグインを使用すると、`cms:id="img_copy"`のように指定することで、alt属性を含めたimgタグを出力できます。`_copy`の部分は設定で変更可能です。このプラグインを含むパッケージはsaitodev.co/soycms/からダウンロードできます。

 

トリュフ型キノコのショウロ

/** Geminiが自動生成した概要 **/
ショウロはマツ林に生えるトリュフ型の高級キノコで、菌根菌のため人工栽培ができない。山火事などで生態系が撹乱された場所にいち早く生えるマツと共生する先駆的な性質を持つ。原始的なキノコに見える柄のない形状だが、DNA解析の結果、柄のあるキノコよりも後に進化したと考えられている。これは、森で生えるキノコが先に現れ、後に撹乱環境で生えるキノコが現れたという進化の流れを示唆している。ショウロは共生するクロマツに何らかの利益を与えている可能性がある。

 

QRCode.jsを試してみた

/** Geminiが自動生成した概要 **/
使い捨てURLのQRコードをBootstrapのモーダル内に表示する際、QRCode.jsで生成したQRコードのセンタリングに苦労した。QRCode.jsは簡単にQRコードを生成できるが、出力される<div>内の<img>タグの幅が100%になるため、`text-center`クラスが効かない。DOMで出力された<canvas>タグのサイズに合わせて、<div id="qrcode">に`style="width:128px;margin:0 auto;"`を指定することで、QRコードをモーダル中央に表示できた。

 

キノコは種類によって栄養価が異なるのか?

/** Geminiが自動生成した概要 **/
家畜糞堆肥で育てた野菜の摂取は健康に繋がる可能性がある。キノコ栽培で発生する廃菌床は、野菜栽培の土壌改良に有効で、野菜の秀品率や栄養価向上に貢献する。キノコ自体も種類によって栄養価が異なり、特にエルゴチオネインという抗酸化物質は、免疫調整に重要な役割を果たすビタミンDの働きをサポートする。キノコ消費の増加は廃菌床の増加にも繋がり、結果的に野菜の品質向上、ひいては人々の健康増進、医療費削減に寄与する可能性を秘めている。

 

OpenStreetMap + Leafletでカスタムアイコンを使ってみる

/** Geminiが自動生成した概要 **/
OpenStreetMapとLeafletを使って地図上にカスタムアイコンを表示する方法を紹介しています。 シンプルなマーカー設置では、L.icon()でアイコンオブジェクトを作成し、L.marker()のオプションで指定します。 L.geoJSONを使う場合は、GeoJSONデータのpropertiesにiconオブジェクトを追加し、pointToLayerオプションで条件分岐することで、特定のマーカーのみカスタムアイコンに変更できます。 記事では、摂津峡のマーカーにnature.pngというカスタムアイコンを設定する例を示しています。

 

OpenStreetMap + Leafletで二つのマーカーを設置する

/** Geminiが自動生成した概要 **/
OpenStreetMapとLeafletを用いて地図上に複数のマーカーを設置する方法について解説されています。以前の記事ではマーカー一つずつにクリックイベントを設定していましたが、今回は複数のマーカーをまとめて表示する方法を説明しています。 具体的には、位置情報オブジェクトを配列で定義し、L.geoJSON関数の第一引数に渡すことで実現しています。配列内の各オブジェクトは、マーカーの名称、リンク先のURL、緯度経度情報を持ちます。 以前のコードではオブジェクトが一つしか扱えず、複数マーカー設置には非効率でした。今回の変更により、配列に要素を追加するだけで簡単にマーカーを増やせるようになりました。記事では摂津峡と山水館の二つのマーカーを設置する例を示し、山水館へのリンクも掲載しています。

 

OpenStreetMap + Leafletで設置したマーカーにクリックのイベントを追加した

/** Geminiが自動生成した概要 **/
OpenStreetMapとLeafletを用いて地図上にマーカーを設置し、クリックイベントを追加する方法について解説しています。 まず、Leafletで地図上にマーカーを設置する基本的なコードを示し、クリックイベントを追加するために`L.geoJSON`を使用する方法を説明しています。`L.geoJSON`の第二引数に`onEachFeature`オプションを渡すことで、マーカーごとにクリックイベントを設定できます。 記事では、クリックイベント発生時に任意のURLへ遷移する例を挙げており、PCとスマホそれぞれでクリックとタップイベントに対応するコードを記述しています。

 

クロスサイトリクエストフォージェリを回避する方法を探る

/** Geminiが自動生成した概要 **/
記事では、SOY2HTMLでセキュアなフォームを作成する方法を解説しています。具体的には、CSRF対策としてトークンを埋め込んだフォームを生成するHTMLFormクラスの使い方を紹介しています。 buildHiddenToken()でトークンを生成し、isValidToken()で検証することで、悪意のある外部サイトからのリクエストを無効化できます。また、トークンの有効期限を設定することでセキュリティを強化できます。記事では、具体的なコード例を交えながら、これらの機能の使い方を分かりやすく説明しています。 さらに、HTMLFormクラス以外の方法として、独自にトークンを生成・検証する方法についても触れています。

 

SQLインジェクションに対してプリペアードステートメントが有効であるかを試してみる

/** Geminiが自動生成した概要 **/
この記事では、PHPにおけるSQLインジェクション対策としてプリペアードステートメントの有効性を検証しています。まず、脆弱なコード例を示し、攻撃者がSQL文を操作して意図しないデータを取得できることを実演。次に、プリペアードステートメントを用いた修正版を紹介し、SQL文と入力データを分離することで攻撃を防ぐ仕組みを解説しています。具体的には、プレースホルダを用いてSQL文を準備し、executeメソッドでパラメータをバインドすることで、入力データがSQL文として解釈されることを防いでいます。結果、同じ攻撃を試みてもデータが取得できず、プリペアードステートメントの有効性が確認されました。関連記事として、SOY2DAOでのプリペアードステートメントの利用方法も紹介されています。

 

クロスサイトスクリプティングを回避する方法を探る

/** Geminiが自動生成した概要 **/
SOY2では、XSS対策としてhtmlspecialcharsを簡便に利用できるHTMLLabelを提供している。記事では、HTMLLabelの基本的な使い方と、soy:idを用いた動的な値の表示方法を解説。HTMLLabelはHTMLタグを自動的にエスケープし、安全に値を表示。例として、ブログ記事のタイトルを表示するコードを紹介し、HTMLLabelを用いることで、タイトルに含まれるHTMLタグがエスケープされ、XSS脆弱性を防ぐ様子を示している。また、HTMLLabelの子要素としてHTMLタグを記述することで、特定のタグを許可することも可能。記事は、HTMLLabelがSOY2でのXSS対策に効果的であることを示唆。

 

SOY CMSでページ切り替えプラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY CMSのページ切り替えプラグインは、指定期間中に特定のURLでアクセスされた際に、別のページコンテンツを表示する機能を提供します。 例えば、キャンペーン期間中のみトップページをキャンペーン専用のデザインに切り替えることができます。 管理画面で切り替え期間と対象ページ、表示ページを設定するだけで、URLを変更することなくコンテンツを切り替えられます。 さらに、意図しないアクセスを防ぐため、切り替え先ページへの直接アクセスはリダイレクトで元のページへ戻されます。 ダウンロードはsaitodev.co/soycms/ から可能です。

 

コロナウィルスについてを知る

/** Geminiが自動生成した概要 **/
コロナウイルスはコロナウイルス科に属する一本鎖プラス鎖RNAウイルス(ssRNA(+))です。RNAウイルスはDNAウイルスに比べ変異しやすく、さらに一本鎖であるため複製ミスが修復されず、変異が助長されます。コロナウイルスは既知のRNAウイルスの中で最大級のため、変異しやすい性質を持ちます。ssRNA(+)は、RNAを直接mRNAとして利用できるため、宿主細胞内で速やかにタンパク質合成を開始できます。コロナという名前の由来は、ウイルスの表面にある突起が王冠(コロナ)のように見えることにちなんでいます。

 

ウィルスの意味論を読み、RNAウィルスから発見された酵素の恩恵を思い出した

/** Geminiが自動生成した概要 **/
内在性レトロウイルスは、古代のレトロウイルス感染によって宿主ゲノムに組み込まれたウイルス配列である。ヒトゲノムの約8%を占め、通常は不活性化されているが、一部は遺伝子発現に関与し、胎盤形成に必要なシンシチンなどのタンパク質をコードする。シンシチンは細胞融合を促進し、胎児と母体の栄養交換を可能にする合胞体栄養膜の形成に寄与する。 これらのウイルス由来遺伝子は進化的に保存されており、哺乳類の胎盤進化に重要な役割を果たしたと考えられている。一方で、内在性レトロウイルスの活性化は、自己免疫疾患やがんなどの病態に関与する可能性も示唆されている。

 

持ち帰ったドングリから昆虫の幼虫が出てきたよ

/** Geminiが自動生成した概要 **/
持ち帰ったドングリからゾウムシの幼虫が出てきた。NHK for Schoolの動画によると、ゾウムシはドングリが小さく柔らかい時期に産卵する。では、殻斗はドングリを昆虫から守る役割を果たしているのだろうか?シイやブナの殻斗はドングリ全体を包み込む形状だが、多くのドングリでは殻斗は帽子状になっている。これはブナ科の進化の過程で、殻斗に包まれる形を辞めたことを示唆し、昆虫との関係性など、進化のドラマが隠されていると考えられる。

 

チリメンガシの木を見に行く

/** Geminiが自動生成した概要 **/
京都御苑でチリメンガシを観察。透けるような樹形で、名の由来である縮れた葉が特徴的だった。根元にはウバメガシに似たドングリが落ちていた。チリメンガシはウバメガシの園芸品種で、ウバメガシは海辺に自生し、過酷な環境に強いことから街路樹としてよく植えられている。その為、人目に触れる機会が多く、園芸品種も生まれたと考えられる。

 

SOY CMSで外部CSSファイルを自動でインライン化する

/** Geminiが自動生成した概要 **/
この記事では、SOY CMSで外部CSSを自動的にインライン化し、ページ表示速度を向上させる方法を紹介しています。通常、外部CSSファイルは別途リクエストが必要ですが、これをHTML内に直接埋め込むことでHTTPリクエスト数を減らし、レンダリング速度を改善します。 具体的には、cms:moduleタグとPHPを組み合わせた手法を用います。通常表示時は<link>タグで外部CSSを読み込みますが、SOY CMS経由での出力時は、PHPでCSSファイルの内容を読み込み、圧縮・整形した上で<style>タグ内に埋め込みます。これにより、SOY CMSを通さない場合は外部ファイル、SOY CMSを通す場合はインラインCSSと表示方法を自動で切り替えます。 この方法の利点は、CSSの管理を外部ファイルで行いつつ、出力時にはインライン化のメリットを享受できる点です。さらに、PHPでCSSの内容を操作できるため、ページごとに必要なCSSのみを出力するなど、転送量を最適化することも可能です。結果としてCore Web Vitalsの改善にも繋がります。

 

SOY CMSのCumulative Layout Shiftプラグインにpicture要素設定を追加しました

/** Geminiが自動生成した概要 **/
SOY CMSのCore Web Vitals改善用プラグイン「Cumulative Layout Shift」にpicture要素設定が追加されました。 picture要素はレスポンシブ画像を実現するHTMLタグで、画面幅に応じて最適な画像を出力します。プラグインでは、imgタグにsize属性を自動挿入するか、pictureタグで囲うかを選択できます。ただし、既にHTMLテンプレートでpictureタグを使用している場合は正常に動作しないため注意が必要です。この機能はsaitodev.co/soycms/で提供されるパッケージに含まれています。画像のwidthが小さい場合はsize属性が自動挿入されます。

 

森林生態系の物質循環

/** Geminiが自動生成した概要 **/
森林生態系の物質循環、特に窒素とリン酸の循環に焦点を当てた解説。森林の生産性は水や窒素の循環に影響され、窒素は降雨や落葉、窒素固定によって供給される一方、脱窒やアンモニア揮発、渓流水で流出する。窒素は植物体内や森林全体で再利用性が高い。リン酸も重要で、再利用性が高く、母岩からの溶出が供給源となる。窒素は肥料木や動物の活動で森林に蓄積され、リン酸は母岩由来の供給が大きい。全体として、森林生態系における窒素とリン酸の循環の複雑さと重要性を示唆している。

 

SOY Shopで管理画面でSOY Shopらしさをなくす

/** Geminiが自動生成した概要 **/
SOY Shopでショップサイト以外を作成するケースが増加し、管理画面から「ショップ」の文字を削除したいというニーズに対応するため、管理画面のURLの「soyshop」部分を変更できる機能が追加されました。 設定方法は、`/CMSインストールディレクトリ/common/config/admin.uri.config.php.sample` を `.php` にリネームし、`define("SOYSHOP_ADMIN_URI", "soyshop");` の `soyshop` を任意の文字列に変更します。その後、ファイル内の指示に従って必要なディレクトリとファイルを作成し、キャッシュを削除すれば設定完了です。 この機能は最新のSOY CMSとSOY Shopのパッケージに含まれています。現状ではSOY Shopのみに対応しており、SOY CMS側は未対応です。

 

SOY CMSの管理画面のHTMLファイルの探し方

/** Geminiが自動生成した概要 **/
SOY CMSの管理画面UIをカスタマイズするには、該当HTMLファイルを見つける必要があります。例としてページテンプレート編集画面(URL例: `http://example.com/cms/soycms/index.php/Page/Detail/3`)を挙げます。 HTMLファイルは`cms/soycms/webapp/pages`ディレクトリ以下に配置されています。URLの`Page/Detail`部分がディレクトリとファイル名に対応します。まず`pages`ディレクトリ内の`Page`ディレクトリを探します。次に`Detail`ディレクトリを探しますが、存在しない場合は`DetailPage.html`が目的のファイルです。通常、`DetailPage.class.php`というPHPファイルも対で存在します。これらはSOY2HTMLの仕組みを利用しており、より深く理解するには関連の記事を参照ください。

 

ブルーベリーは目に良いというけれど

/** Geminiが自動生成した概要 **/
ブルーベリーの視力増強効果は、アントシアニンというポリフェノールによるものです。アントシアニンはブルーベリー特有ではなく、近縁種のビルベリーや他の植物にも含まれます。視力への影響は、光による活性酸素の発生を抑えることにあります。紫外線を含む光は目に有害で、活性酸素を発生させ、視細胞を損傷・死滅させます。アントシアニンはこの活性酸素の発生を抑制し、視細胞の損傷を軽減、再生も抑えることで視力増強に繋がります。この活性酸素抑制効果は、以前の記事で触れたアジサイの花弁の色素やフラボノイドと関連しています。

 

データ構造のキューとリングバッファを見る

/** Geminiが自動生成した概要 **/
Go言語のテスト方法に関する記事の要約です。Goでは`*_test.go`ファイルにテスト関数を記述します。テスト関数は`TestXxx`という命名規則に従い、`*testing.T`を引数に取ります。`t.Error`や`t.Errorf`でテスト失敗を報告し、`t.Log`でログを出力します。`go test`コマンドでテストを実行でき、`-v`オプションで詳細表示、`-cover`でカバレッジ計測が可能です。記事では具体的なテスト例として、文字列の等価性チェックやエラーハンドリングのテストが紹介されています。また、外部パッケージのテストやテストデータの扱いについても触れられています。

 

字句解析器を作る為にデータ構造のスタックを見る

/** Geminiが自動生成した概要 **/
Go言語のテスト方法を解説した記事の要約です。Goでは`*_test.go`ファイルにテスト関数を記述します。テスト関数は`Test*`という名前で、`*testing.T`を引数に取ります。`t.Error`や`t.Errorf`でテスト失敗を報告、`t.Log`でログ出力、`t.Run`でサブテストを実行できます。`go test`コマンドでテストを実行し、カバレッジは`go test -cover`で確認できます。記事では具体的な例として、加算関数`Add`のテストコードを`add_test.go`に記述し、正常系と異常系のテストケースを実行する方法を紹介しています。また、テーブル駆動テストを用いて複数のテストケースを簡潔に記述する方法も説明しています。

 

ハッシュテーブルのチェイン法を見る

/** Geminiが自動生成した概要 **/
PHPのハッシュテーブルの実装であるチェイン法を、単方向連結リストを用いて再現した。ハッシュテーブルへの要素追加、検索、初期化、リサイズの関数をPHPで作成し、衝突が発生するケース(アズキとショウブ)で動作を確認した。結果、インデックス2にアズキとショウブが連結リストで格納され、検索関数も正しく動作することを確認できた。この実装はPHPのzvalや変数登録の仕組みを理解する上で役立つ。ただし、PHPのチェイン法は双方向連結リストを用いており、また、連結リストではなく配列を用いる実装もある。

 

データ構造の単方向連結リストを見る

/** Geminiが自動生成した概要 **/
PHPで単方向連結リストを実装する方法を解説しています。連結リストは、各要素(ノード)がデータと次のノードへのポインタを持つデータ構造です。記事では、ノードクラスと、リストの末尾にノードを追加する`_add`関数を定義しています。例として、木の名前をリストに追加し、図で構造を可視化しています。C言語と異なりPHPでは配列の恩恵が大きいため連結リストのメリットは少ないものの、ハッシュテーブルの衝突回避策として重要であると述べ、最後に双方向連結リストではprevプロパティで前のノードも保持すると補足しています。

 

データ構造のハッシュテーブルを見る

/** Geminiが自動生成した概要 **/
PHPの関数はハッシュテーブルというデータ構造で管理される。ハッシュテーブルは高速な検索が可能だが、ハッシュ値の衝突という問題がある。この記事では、簡単なハッシュ関数とハッシュテーブル操作関数を作成し、文字列を登録する例を通してハッシュテーブルの基本的な動作を説明する。複数の文字列を登録する際に、ハッシュ値の衝突が発生し、一部の文字列が登録されないことを示し、衝突回避のための方法としてハッシュテーブルのリサイズやハッシュ関数の改良、そしてチェイン法の存在を示唆している。

 

PHPの関数の登録2

/** Geminiが自動生成した概要 **/
PHPの関数の登録は実行時に動的に行われる。includeされたファイル内の関数は、includeされるまで定義されない。また、条件分岐で囲まれた関数は、条件が満たされなければ定義されない。つまり、関数の定義記述が実行時に通過しなければ、関数は登録されない。この挙動は、`get_defined_functions()` の結果で確認できる。これらの結果から、PHPはマルチパス方式ではなく、実行時にコードを解釈・実行しながら関数を登録していることがわかる。

 

基肥のリン酸が発根促進である理由を考えてみる

/** Geminiが自動生成した概要 **/
リン酸がイネの発根促進に繋がるメカニズムを考察した記事です。発根促進物質として知られるイノシンに着目し、その前駆体であるイノシン酸の生合成経路を解説しています。イノシン酸は、光合成産物であるグルコースにリン酸が付加されたリボース-5-リン酸を経て合成されます。つまり、リン酸の存在がイノシン酸の合成、ひいてはイノシン生成による発根促進に重要であると示唆しています。さらに、リン酸欠乏時には糖がフラボノイド合成に回され、葉が赤や紫に変色するという現象との関連性にも言及しています。

 

PHPの関数の登録

/** Geminiが自動生成した概要 **/
PHPの関数登録について`get_defined_functions`関数を用いて調査。ユーザー定義関数は'user'配列に、ビルトイン関数は'internal'配列に格納される。関数の定義箇所に関わらず、実行前に`get_defined_functions`を実行すると、定義済みの全関数が取得できる。これはPHPがマルチパス方式を採用し、実行前にファイル全体を読み込んで関数登録を完了させているためと考えられる。

 

SOY CMSのカノニカルURL挿入プラグインでトライリングスラッシュの設定を追加しました

/** Geminiが自動生成した概要 **/
SOY CMSのカノニカルURL挿入プラグインに、トライリングスラッシュとwwwの有無を設定する機能が追加されました。トライリングスラッシュとは、URL末尾にスラッシュを追加するかどうか(例: `/article/タイトル/`)の設定です。wwwの設定は、カノニカルURLで`www.example.com`を`example.com`のようにwwwを除外するかどうかを設定します。これらの設定により、SEO対策として重要なカノニカルURLをより柔軟に制御できるようになりました。新機能はsaitodev.co/soycms/で提供されるパッケージに含まれています。

 

PHPのOPCacheで生成されるキャッシュを見る

/** Geminiが自動生成した概要 **/
PHPのオペコードを確認するにはVLD拡張モジュールを使用します。VLDはPHPスクリプトをコンパイルし、生成されたオペコードを人間が読める形式で出力します。出力には、各オペコードの行番号、オペコードの種類、オペランド、結果などが含まれます。これにより、PHPスクリプトの実行方法を詳細に理解し、パフォーマンスのボトルネックを特定するのに役立ちます。VLDのインストールはPECLを利用し、php.iniで`vld.active=1`などを設定することで有効化できます。関数`vld_dump()`で特定の関数のオペコードを出力することも可能です。

 

SOY CMS / Shopで別サイトのモジュールを読み込む

/** Geminiが自動生成した概要 **/
SOY CMS/Shopで、別サイトのHTMLモジュールを読み込む新機能が追加されました。サイトIDをプレフィックスとして`{siteId}.moduleName`のように指定することで、HTMLのみで構成されたモジュールを別サイトから呼び出せます。例えば、`{otherSite}.html.sample`と記述すれば、siteIdが"otherSite"のサイトにある"html.sample"モジュールが表示されます。ただし、SOY CMSとSOY Shop間でのモジュールの相互利用は不可で、データベースを参照するモジュールも使用できません。この機能は、最新版のSOY CMS/Shopパッケージで利用可能です。

 

【SEO対策】PHPのOPCacheの更新チェックの頻度を下げる

/** Geminiが自動生成した概要 **/
PHPのOPCacheは、バイトコードをキャッシュしてパフォーマンスを向上させる機能。設定項目`opcache.revalidate_freq`はスクリプトの更新チェック頻度を制御する。デフォルトは2秒だが、CMSサイト等でPHPスクリプトの更新が少ない場合は、この値を大きくすることで更新チェックのオーバーヘッドを減らせる。設定変更は`php.ini`で`opcache.validate_timestamps`を有効化し、`opcache.revalidate_freq`を例えば86400(1日)に変更、サーバー再起動で行う。今回の検証ではパフォーマンスの顕著な差は見られなかった。

 

WSL2でSOY CMSの開発環境を作ってみた(virtualhost編)

/** Geminiが自動生成した概要 **/
WSL2上のUbuntuにApache2とPHPで構築したSOY CMS環境に、VirtualHostを追加する方法を解説しています。`/etc/apache2/sites-available/`にある`000-default.conf`を`demo.conf`にコピーし、ポートを8080、DocumentRootを`/home/ryoko/workspace/demo`に変更、アクセス許可の設定を追加します。`a2ensite`コマンドで有効化し、Apache2を再起動後、`localhost:8080`でSOY CMSの管理画面が表示されれば成功です。

 

イネは長い育種の歴史においてサイトカイニン含量が増えた

/** Geminiが自動生成した概要 **/
イネは品種改良を通してサイトカイニン含量が増加し、収量向上に繋がった。サイトカイニンは分げつ伸長や養分転流に関与する重要な植物ホルモンだが、根の伸長は抑制する。高校生物で学ぶ「サイトカイニンは根で合成」は少し不正確で、実際は地上部で合成されたiP型サイトカイニンが根に運ばれ、tZ型に変換されて地上部へ送られ作用する。根の栄養塩が豊富だとtZ型への変換が促進され、サイトカイニン活性が高まる。

 

郵便番号を入力したら半径3km内のすべての町名を取得する

/** Geminiが自動生成した概要 **/
Google Geocoding APIを用いて、指定住所(安岡寺)から半径3km以内の町名を取得する方法を検証した。APIで中心座標を取得後、緯度経度を0.01(約1km)ずつずらした地点の逆ジオコーディングを繰り返し、町名を収集した。しかし、1kmグリッドでは範囲内の全町名を網羅できず、グリッドを細かくするとAPI使用回数が増加する問題点が残った。より効率的な方法の検討が必要。

 

SOY ShopでAmazon Pay ワンタイムペイメント支払いモジュールを作成しました

/** Geminiが自動生成した概要 **/
Amazon Pay Widget Code Generatorは、Amazon Payボタンをウェブサイトに簡単に統合するためのツールです。ボタンの種類(ログイン、支払い)、サイズ、カラー、言語などのオプションを選択することで、必要なHTMLとJavaScriptコードを生成します。生成されたコードには、`createCheckoutSession`関数も含まれており、決済セッションの作成とAmazon Payウィジェットの表示を処理します。これにより、開発者は複雑な実装を気にすることなく、Amazon Payを迅速に導入できます。 ツールは様々なカスタマイズオプションを提供し、シームレスな顧客体験を実現するボタン作成を支援します。

 

SOY Shop版HTMLキャッシュプラグインを追加しました

/** Geminiが自動生成した概要 **/
SOY Shop 2にHTMLキャッシュプラグインが追加され、高速化が可能になった。カートウィジェットの問題は非同期通信で解決し、カート内商品数と合計金額をJSONで取得できる。ヤマトリップショップではこの機能とLazyLoadプラグイン、jpegoptimにより、ページ表示速度が3.3秒から1秒以下になり、PageSpeed InsightsのスコアもPCで90を超えた。スマホは90に届かなかったが、Gueztliによる画像最適化で改善が見込まれる。SOY Shop 2正式版は近日公開予定。

 

SOY CMSを介さずにSOY2Mailでメールを送信してみる

/** Geminiが自動生成した概要 **/
SOY CMSを使わずにSOY2Mailでメールを送信する方法を紹介しています。PHPのmail関数より手軽にメール送信できるSOY2Mailを使うため、SOY CMSのsoy2_build.phpを流用し、sendmailを利用する設定でSOY2Mailを初期化します。宛先、送信元、件名、本文を設定後、sendメソッドで送信します。ヘッダーやエンコードの設定は自動で行われます。この記事は、SOY2HTMLやSOY2DAOをSOY CMS外で使う方法を紹介した記事と関連しています。

 

紅葉の落ち葉が土に還る

/** Geminiが自動生成した概要 **/
紅葉の鮮やかな赤色はアントシアニンによるもので、これが分解されると褐色になる。アントシアニンの一種シアニジンは還元されてフラバン-3-オール(例:エピカテキン)となり、これが重合して縮合型タンニン(プロアントシアニジン)を形成する。タンニンはさらに縮合し、腐植酸へと変化していく。腐植酸は土壌有機物の主要成分であり、植物の栄養源となる。つまり、紅葉の落葉は分解・重合・縮合を経て土壌の一部となり、新たな生命を育むための養分となる。

 

黄色い色素のフラボノイド

/** Geminiが自動生成した概要 **/
アサガオの青色はアントシアニン色素によるが、幻の黄色いアサガオの謎をフラボノイドから探る。フラボノイドは黄色い化合物の語源を持ち、ミヤコグサの黄色はフラボノイドの一種ケルセチンによる。アサガオはケルセチン合成経路を持つものの、アントシアニン合成が優先される。淡黄色のアサガオはアントシアニン合成が欠損した変異体と考えられ、ケルセチン合成の増加で黄色が濃くなる可能性がある。アサガオの鮮やかな青はアントシアニンと補助色素のフラボノールの共存によるものかもしれない。

 

紅色の花のアサガオ

/** Geminiが自動生成した概要 **/
アントシアニンはpHによって色が変化する色素です。酸性では赤、中性に近づくにつれ紫色、アルカリ性では青色になります。これはアントシアニンの分子構造がpHの変化によって変化し、吸収する光の波長が変わるためです。アサガオの花弁の色もアントシアニンによるもので、pHの違いで様々な色合いが生じます。青色のアサガオはアルカリ性の液胞を持ち、赤いアサガオは酸性の液胞を持つと考えられます。

 

php-webdriverでelement click interceptedのエラーに対して

/** Geminiが自動生成した概要 **/
SeleniumとJenkins、php-webdriver、ヘッドレスChromiumでテスト自動化中に、メモウィジェットが原因でelement click interceptedエラーが発生。ヘッドレスモードで画面サイズが不足し、対象ボタンが隠れていたのが原因。ウィンドウサイズを`1024x2048`に設定することで一時的に解決したが、ページサイズに依存するこの方法は最適ではない。スクロールによる解決策も検討されたが、最終的にはCSSを修正し、メモウィジェットが他のボタンと重ならないように調整することで根本解決した。

 

アジサイの花弁の色を理解する為にアントシアニジンを見る

/** Geminiが自動生成した概要 **/
アジサイの花弁の色は、アントシアニジンという色素の構造、特にB環の水酸基の数に影響される。水酸基が少ないペラルゴニジンは橙色、水酸基が増えるにつれペオニジン、シアニジン、ペツニジンと青味が増す。しかし、最多の水酸基を持つデルフィニジンを持つアジサイでも赤い花弁が存在する。これは、アントシアニジンの別の特徴によるもので、今回の記事では未解明のまま。

 

さくらのメールボックスからのメールをGmailで受信した際の?のアイコンを回避

/** Geminiが自動生成した概要 **/
さくらのメールボックスからGmailへメール送信時、送信元認証がされていないため「?」アイコンが表示される問題を解決する方法。お名前.comで取得したドメインのDNS設定で、さくらのメールボックスのホスト名を用いてSPFレコード `v=spf1 a:ホスト名 mx ~all` をTXTレコードとして追加する。設定後、mxtoolbox.comでSPFレコードを確認し、Gmailで受信したメールのアイコンが「?」から人物アイコンに変われば成功。

 

風邪の予防にミカンというけれど

/** Geminiが自動生成した概要 **/
冬至にかぼちゃ、風邪予防にミカンが良いとされる所以を、カロテノイドβ-クリプトキサンチンに着目し解説。ビワやミカンはカロテノイドが豊富で、特にミカンをよく食べる日本人は血中β-クリプトキサンチン値が欧米人より高い。β-クリプトキサンチンは抗酸化作用があり、免疫グロブリン合成にも重要。糖度の高いミカンほど含有量も多い。真の免疫向上は、ミカンやビワといったカロテノイド豊富な果実の摂取による恒常性維持ではないかと考察。関連として亜鉛の重要性、かぼちゃの効能にも言及。

 

南房総族よりビワが届いた2020

/** Geminiが自動生成した概要 **/
ビワはβ-カロテンとβ-クリプトキサンチンが豊富で、ミカンに匹敵する感染症予防効果を持つ。β-カロテンは両端に水酸基(-OH)のない構造、β-クリプトキサンチンは片端に水酸基を持つ。これらのカロテノイドは体内でビタミンAに変換され、免疫機能の維持、抗酸化作用、細胞の健康維持に寄与する。特に粘膜を強化し、病原体の侵入を防ぐ効果が高い。健康維持のためにカロテノイドを積極的に摂取することは重要である。

 

農薬を使う必要がない野菜こそが健康に繋がるはず

/** Geminiが自動生成した概要 **/
農薬不要な野菜は、食害昆虫や病原菌への耐性向上のため香り化合物(二糖配糖体)を蓄積し、食味や香りを向上させる。青葉アルコール等の香気成分は健康にも良く、慢性疲労症候群の疲労に伴う機能低下を改善する効果も報告されている。野菜を咀嚼すると香り化合物が鼻腔に届き香りを認識するが、香り化合物は損傷を受けた際に揮発するため、咀嚼によって効率的に摂取できる。つまり、香り化合物を多く含む野菜は、虫や病気に強く農薬防除を必要としない。食害を受けにくく病気にもなりにくい野菜を育てるには、香り化合物の合成を高める草生栽培が有効である可能性がある。ウィルス流行等の脅威に対し、野菜の質向上、特に香り化合物に着目した品質向上が重要となる。

 

SOY2HTMLで軽微なカスタマイズを加える為の機能を追加しました

/** Geminiが自動生成した概要 **/
SOY CMS/ShopのSOY2HTMLに、軽微なカスタマイズを容易にする隠し機能が追加されました。クラスファイルと同名のHTMLファイル名の頭にアンダースコア「_」を付けると、そのHTMLファイルが優先的に読み込まれます。これにより、プラグインのバージョンアップ時の上書きを回避できます。例えば、配送モジュールの文言変更など、PHP知識を必要とせず容易にカスタマイズできます。標準配送モジュールなら `delivery_normal/cart/_DeliveryNormalCartPage.html` を配置し、元のHTMLの内容をコピー・編集することで実現できます。SOY Shop 2系以降で利用可能、1系は `soy2_build.php` の修正が必要です。新パッケージはsaitodev.coからダウンロードできます。

 

【SEO対策】HTMLの圧縮

/** Geminiが自動生成した概要 **/
HTMLの圧縮は、Webページの表示速度向上とデータ転送量削減に効果的なSEO対策です。HTMLソースコードには、可読性向上のために改行やタブが含まれていますが、これらは表示には不要なため、転送前に削除することでデータ量を減らせます。SOY CMSでは、HTML圧縮プラグインを利用することで、テンプレート編集時の可読性を維持しつつ、転送時には自動的にHTMLを圧縮できます。このプラグインは、HTMLキャッシュプラグインや静的化プラグインと併用することで、圧縮処理の負荷を軽減し、更なる高速化を実現します。HTML圧縮プラグインを含むパッケージはsaitodev.co/soycms/からダウンロード可能です。

 

味噌の中にGABAはあるか?

/** Geminiが自動生成した概要 **/
GABAを多く含む食品を探している著者は、味噌に着目するも、一般的な味噌は塩分濃度が高いためGABA生成菌が生育できず、GABA含有量は低いと知る。GABAを含む味噌が将来的に市販される可能性は示唆されているものの、現状ではGABA摂取源としては不向き。茶葉や玄米の発酵/発芽でGABAが増える例もあることから、他の発酵食品、特にすぐき、キムチ、ぬか漬けにGABAが含まれる可能性を考察し、味噌とぬか漬けの塩分濃度の比較に言及している。

 

自然免疫を高める食品は何か?の続き

/** Geminiが自動生成した概要 **/
免疫向上に重要な亜鉛は、好中球の活性酸素産生やDNA合成に関与し、不足すると免疫機能が低下する。好中球はペルオキシダーゼ酵素群を用いて活性酸素を生成し病原体を殺菌するが、この酵素の補酵素にはNADPHやヘムが必要となる。NADPHは光合成の明反応で生成され、ヘムはアミノレブリン酸から合成される。これらの経路は植物の光合成や活性酸素の制御機構と類似しており、葉緑素豊富な春菊は亜鉛などの微量要素も豊富で免疫向上に良いと考えられる。ただし、マンガン欠乏土壌で育った野菜は効果が期待できないため、土壌の質にも注意が必要。ウイルス感染時は、好中球ではなくナチュラルキラー細胞によるアポトーシス誘導が主であり、そこでも活性酸素が重要な役割を果たす。

 

【SEO対策】他のCMS向けの総当り攻撃を避ける

/** Geminiが自動生成した概要 **/
サイバー攻撃の増加は深刻な問題であり、特にCMSを狙った攻撃は増加傾向にある。記事ではSOY CMSへの攻撃事例を通して、その脅威を具体的に示している。攻撃者は管理画面へのログインを試みたり、脆弱性を突いて不正アクセスを試みる。対策としては、管理画面のURLを変更したり、.htaccessでアクセス制限をかけることが有効である。また、WAFの導入やセキュリティプラグインの活用も推奨されている。常に最新の情報に注意し、適切なセキュリティ対策を実施することで、被害を最小限に抑えることが重要である。

 

【SEO対策】SNS系のボタンを自作する

/** Geminiが自動生成した概要 **/
PageSpeed Insightsのスコア向上のため、公式SNSボタンを自作のものに置き換えた。公式ボタンはJavaScriptを使用し、ページ速度に悪影響を与えていた。記事詳細ページのTwitterボタンを例に、自作方法を紹介。HTMLでは`<a>`タグでツイートリンクを作成し、記事タイトルとURLを動的に設定。CSSでボタンのスタイルを定義。SOY CMSでは`cms:id="title_plain"`と`cms:id="entry_url"`を用いて記事タイトルとURLを取得し、JavaScriptを使わずにツイートボタンを実装。これにより、ページ読み込み速度が向上し、PageSpeed Insightsのスコアも改善された。

 

【SEO対策】CSSの読み込み方の変更で高速化

/** Geminiが自動生成した概要 **/
CSSの読み込み方を変えることでSEO対策とページ表示速度の高速化を実現する方法を紹介。従来headタグ内に記述していた外部CSSをbody閉じタグ後へ移動することでレンダリングブロックを回避し、表示速度を向上させる。さらに、HTTP/2環境下ではファイル数削減が有効となるため、CSSをHTML内に直接記述する方法も提示。ただし、保守性向上のためにCMSのモジュール機能を活用し、HTML末尾にCSSを挿入する手法を推奨。この際、モジュールファイルの読み込みによる速度低下を防ぐため、最終HTMLのキャッシュ機構を併用することが重要となる。

 

肥料の選定に迷ったら開発の話を確認しよう

/** Geminiが自動生成した概要 **/
肥料選びに迷う際は、開発の経緯も参考にすべきである。例えば、光合成促進を目的とするなら、ヘム合成材料であるアミノレブリン酸を主成分とする肥料が適している。一方、各種アミノ酸混合肥料は、災害後の回復促進にも有効だ。アミノレブリン酸は元々は除草剤として開発され、低濃度で生育促進効果が見つかった経緯を持つ。そのため、高濃度散布はリスクを伴う可能性がある。生育促進と災害回復では肥料の使い分けが重要で、前者はサプリメント、後者は運動後や風邪時に摂取するアミノ酸食品に例えられる。つまり、状況に応じて適切な肥料を選択することが重要である。

 

縄文海進と大阪層群から闘鶏山古墳を考えてみる

/** Geminiが自動生成した概要 **/
大阪平野の地下には、大阪層群と呼ばれる厚い粘土層が存在する。これは過去数十万年にわたる気候変動に伴う海水準の変化を記録しており、特に最終間氷期にあたる約12万年前には、現在より温暖な気候で海水準が高く、大阪平野の大部分が海に覆われていた。この時代に堆積した海成粘土層は、軟弱な地盤として知られる。縄文海進期にも海が広がり、淀川・大和川水系の低地は内湾化した。その後の海退により沖積層が堆積し、現在の大阪平野が形成された。大阪層群の研究は、過去の環境変動や地盤特性の理解に重要であり、都市開発や防災対策にも役立てられている。

 

SOY InquiryでParsley.jsを利用する

/** Geminiが自動生成した概要 **/
SOY InquiryにParsley.jsを組み込むと、見栄えの良い入力内容チェックが利用できます。フォームテンプレートにParsley.jsのスクリプトを挿入し、SOY Inquiryのフォーム設定画面で各項目にdata-parsely-triggerとrequired属性を設定します。さらに、data-parsely-required-message属性を追加すると、エラーメッセージをカスタマイズできます。これにより、各項目に合わせたエラーメッセージが表示され、ユーザーフレンドリーなフォームが作成できます。

 

SOY CMSでドメインが異なる複数のサイトを運営する

/** Geminiが自動生成した概要 **/
SOY CMSで異なるドメインの複数サイト(example.kyoto, other.example.kyoto)をさくらVPS上の単一サーバーで運用する手順を記述。Let's Encryptでワイルドカード証明書(*.example.kyoto)を取得し、既存証明書を削除後、お名前.comのDNS設定でTXTレコードを追加。SOY CMSでサイト毎にURLを設定し、Apacheのドキュメントルートにindex.phpと.htaccessを設置、ドメインに応じてサイトを切り替えるよう設定。ワイルドカード証明書の更新は、お名前.comでは自動化できないため手動、またはさくらのクラウドDNSへの移管が必要。

 

阿波の土柱

/** Geminiが自動生成した概要 **/
阿波の土柱は、侵食が進行中の地形であり、脆い部分が崩落し、風化に強い部分が柱状に残っている。柱の先端には礫が見られ、崩落箇所にも礫が転がっている。吉野川北岸に位置し、南岸の大歩危(三波川変成帯)とは地質が異なり、堆積岩で構成されている。土柱の形成過程は、礫を含む堆積物が風雨に晒され、浸食の差によって柱状の地形が生まれたと考えられる。周辺の地質図を見ると、南北で地質が明確に異なり、興味深い。

 

粘土有機複合体から粘土鉱物肥料についてを考える

/** Geminiが自動生成した概要 **/
粘土鉱物を肥料として活用する目的は腐植蓄積だが、粘土鉱物と腐植の繋がりは疑問が残る。2:1型粘土鉱物は正電荷が少ないため、有機物とのイオン結合による蓄積モデルでは説明が不十分。しかし、現実には2:1型粘土鉱物投入で土壌改良効果が見られる。これはAl由来の正電荷以外の結合機構を示唆する。ヒントとして、カオリン鉱物と酢酸カリウムの水素結合、スメクタイトとアルキルアンモニウムの正電荷による結合が挙げられる。腐植蓄積にはこれら以外のメカニズムが関与していると考えられ、特定の肥料と現象がその鍵を握る可能性がある。

 

石灰岩の成り立ちから石灰性暗赤色土を考える

/** Geminiが自動生成した概要 **/
石灰性暗赤色土を理解するために、石灰岩の成り立ちから考察している。石灰岩はサンゴ礁の遺骸が堆積して形成されるが、海底のプレートテクトニクスによる地層の堆積順序を踏まえると、玄武岩質の火成岩層の上に形成される。滋賀県醒ヶ井宿や山口県秋吉台など、石灰岩地域周辺に玄武岩が存在することはこの堆積順序と一致する。つまり、石灰性暗赤色土は石灰岩だけでなく、周辺の玄武岩の影響も受けていると考えられる。玄武岩の影響は土壌の赤色や粘土質を説明する要素となる。暗赤色土に見られる色の違い(赤~黄)は玄武岩質成分の量の差と推測できる。

 

京都北部の舞鶴全般の土壌の考察再び

/** Geminiが自動生成した概要 **/
枚岡公園で風化した斑れい岩の露頭の下に堆積した灰色の土を観察し、京都北部の舞鶴の土壌構成を想起した。舞鶴は山々が斑れい岩質だが、予想に反し黒ボク土は見られない。斑れい岩は苦鉄質で粘性が低いため、風化後には腐植が蓄積し黒ボク土が形成されやすいと予想していた。しかし、枚岡公園の観察結果と同様、舞鶴でも黒ボク土は存在せず、粘性の低い深成岩=腐植蓄積とは単純に結びつかないことが示唆された。このことから、土壌形成には岩石の種類だけでなく、マグマの冷却過程も影響すると推測し、粘土鉱物の理解を深めることで土壌予測の精度向上に繋がるとしている。

 

風化した斑れい岩を見に枚岡公園へ行ってきた

/** Geminiが自動生成した概要 **/
枚岡公園(暗峠)を訪れ、風化した斑れい岩を観察した。急坂で有名な暗峠は、松尾芭蕉が最後に訪れた場所でもある。地質図によると、枚岡公園は斑れい岩質の深成岩地帯。額田山展望台付近で風化した斑れい岩の露頭と、青っぽい深成岩(おそらく斑れい岩)を確認。他に、斑れい岩に貫入した輝緑岩や花崗岩も存在するらしく、深成岩らしい露頭を輝緑岩と予想。今回の訪問は、斑れい岩風化土壌の観察が目的。斑れい岩の説明は次回に持ち越し。本山寺の枕状溶岩や凝灰岩採石場跡訪問の記事へのリンクあり。

 

サツマイモとラウリン酸

/** Geminiが自動生成した概要 **/
ペニシリウム・ロックフォルティは、チーズの熟成に用いられる菌だが、ラウリン酸を生成する。ラウリン酸は抗菌作用を持つため、ロックフォルティが他の菌との競争に優位に立つのに役立っていると考えられる。このことから、菌根菌もラウリン酸のような物質を生成し、他の菌を抑制することで植物との共生関係を有利に進めている可能性が示唆される。秀品率の向上には、このような菌根菌と植物の相互作用、特に抗菌物質の役割の解明が重要であると考えられる。

 

ウイスキーの発酵

/** Geminiが自動生成した概要 **/
大麦(乾)の可食部100g中の脂肪酸組成は、飽和脂肪酸ではパルミチン酸、ステアリン酸が多く、不飽和脂肪酸ではオレイン酸、リノール酸が主要な成分です。ラウリン酸、ミリスチン酸などの短鎖脂肪酸は検出されていません。炭水化物は豊富に含まれ、食物繊維も比較的多く含まれています。ビタミンB群やミネラル類も含まれていますが、ビタミンA、ビタミンCは検出されていません。

 

SOY Shopでマイページログイン用パスワード自動生成プラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY Shopのマイページログイン用パスワード自動生成プラグインがアップデートされ、管理画面から顧客を追加する際にもパスワードが自動生成されるようになりました。従来は顧客がマイページ登録時のみ自動生成でしたが、今回の更新で管理画面からの登録にも対応。これにより、顧客情報のCSVインポートや一括登録時にもパスワードが自動生成され、管理者の負担を軽減します。生成されたパスワードは登録完了メールに記載され、顧客はすぐにマイページにログインできます。この機能はプラグインの設定画面で有効/無効を切り替え可能です。

 

暗赤色土周辺の地域資源を活用する

/** Geminiが自動生成した概要 **/
長崎県の一部地域では、赤土の客土が頻繁に行われている。客土に使われている土壌は、島原地域に分布する暗赤色土である。暗赤色土は、塩基性の強い岩石が風化した土壌で、有機物含量が低く、粘土含量が高く、有効土層が浅い。塩基性暗赤色土は、玄武岩質岩石の風化物でミネラルが豊富である。酸性暗赤色土は、塩基性暗赤色土からミネラルが溶脱したもの。いずれも粘土質が良好で、腐植と相性が良く、黒ボク土へと変化していく過程にあると考えられる。そのため、客土材として有効で、実際に赤土客土した地域では土壌が改善している。

 

長崎地区青年農業者連絡協議会で土壌分析の活用の話をしました

/** Geminiが自動生成した概要 **/
長崎県県央振興局の依頼で、長崎地区青年農業者連絡協議会にて土壌分析活用の講演を行いました。長崎は島原の良質な土壌と、南部の栽培困難な土壌が混在する地域で、島原の赤土を客土として活用するなど、地形に合わせた栽培が盛んです。活発な情報交換が行われるこの地域で、土壌分析の知見を共有しました。長崎の農家は土壌と向き合い、地域により土壌の状態は向上している所とそうでない所の二極化が見られます。講演内容は「京都農販日誌」にも掲載されています。我々の知見が長崎の農業、特に秀品率向上に貢献できることを願っています。

 

PHPのexec関数でセッションの値の引き継ぎに苦戦した時のメモ

/** Geminiが自動生成した概要 **/
Amazon Linux 2のLAMP環境で、PHPの`exec`関数を使ってGoogle Analytics APIにアクセスする際にセッションの引き継ぎに失敗した。`exec`で実行した`cmd.php`内で`session_start()`してもセッション情報が取得できなかった。調査の結果、`cmd.php`内では`session_save_path()`の戻り値が空文字列になっていた。`session_save_path("/var/lib/php/session");`を`session_start()`前に追加することでセッション情報が取得できるようになり、APIアクセスも成功した。`php.ini`の`session.save_path`の設定が原因と考えられるが、未検証。

 

ライ麦パンの知見から緑肥の選定に活かせるか?エンバク編

/** Geminiが自動生成した概要 **/
イネ科緑肥は、土壌への窒素供給効果は限定的だが、土壌構造改善に大きく貢献する。特に、大麦やエン麦などの緑肥は、線虫抑制効果も期待できる。緑肥投入後の土壌は団粒化が進み、通気性・排水性・保水性が向上する。これにより、根の伸長が促進され、養分吸収が向上し、結果として秀品率向上に繋がる。さらに、緑肥の根は土壌を深くまで耕す効果もあり、硬盤層の解消にも役立つ。ただし、緑肥の効果は土壌条件や投入時期、分解期間などに左右されるため、適切な管理が重要となる。加えて、緑肥のすき込み時期を遅らせると、窒素飢餓のリスクも存在する。

 

ライ麦パンの知見から緑肥の選定に活かせるか?

/** Geminiが自動生成した概要 **/
イネ科緑肥の効果について、従来の窒素固定効果への疑問と、土壌物理性改善効果への注目を再考しています。マメ科と比較して窒素固定効果は限定的だが、多量の炭素供給による土壌有機物増加、団粒構造促進、保水性・排水性向上といった物理性の改善効果が大きい。特に、線虫抑制効果や、後作のリン酸吸収促進効果も期待される。ただし、イネ科緑肥単独での窒素供給は不足するため、堆肥など有機物との併用や、土壌窒素量への配慮が必要。緑肥投入後の土壌変化を理解し、適切な管理を行うことで、持続的な土づくりに貢献できる。

 

土と向かい合い向上する地域と下落する地域

/** Geminiが自動生成した概要 **/
ある地域で土壌が悪化し栽培が困難になっているとの連絡を受け、筆者は現地を訪れた。地質図によれば、その地域はミネラル豊富な火山岩地帯で、土壌も有機質に富んでいるはずだった。しかし、現地の畑は悲惨な状態で、赤土粘土が多く存在していた。地域の人々は赤土粘土を嫌って畑から取り除いていたが、筆者は赤土粘土が栽培に有利だと考えている。長野県栄村小滝集落では、かつて水田に赤土粘土を投入して高品質の米を生産していた例もある。赤土粘土の有効性はまだ確証がないものの、鉱物学的視点からは有利と判断できる。この地域は赤土粘土を排除することで土壌を劣化させ、農業生産力を低下させている。この事例は、栽培技術の本質を問う良い機会となった。

 

Ubuntuにインストールしたsendmailの起動と送信が遅くて困った

/** Geminiが自動生成した概要 **/
Ubuntu 19.10上のsendmailの起動とメール送信が非常に遅く、1分以上かかっていた。テスト送信時に「Domain of sender address does not exist」エラーが発生し、送信元メールアドレスが見つからないことが原因と判明。/etc/hostsに`127.0.1.1 ex1-234-56789.vs.sakura.ne.jp ex1-234-56789` (ex1-234-56789はサーバ名)を追加し、sendmailを再起動したところ、送信が数秒で完了するようになった。

 

水無瀬神宮の離宮の水

/** Geminiが自動生成した概要 **/
水無瀬神宮の「離宮の水」は、大阪で唯一の名水百選に選ばれた中硬水である。古くから茶の湯や生活用水に使われ、水無瀬離宮の庭園にも利用されてきた。環境省のサイトによると、水温は年間を通して14~16℃で安定しており、豊富な水量を誇る。水質はカルシウムやマグネシウムの含有量が多く、硬度はおよそ100~150mg/L。後醍醐天皇ゆかりの水無瀬神宮の手水舎で自由に飲むことができ、まろやかな口当たりとわずかな苦味が特徴。周辺は水源涵養林として保護され、豊かな自然環境が水質を守っている。

 

パンの美味しそうな見た目と香り

/** Geminiが自動生成した概要 **/
パンの美味しそうな焼き色は、メイラード反応とキャラメル反応によるもの。メイラード反応は糖とアミノ酸が反応して褐色になり、パンの香ばしい香りのもととなる。アミノ酸の種類によって香りが異なり、小麦に多いプロリンはパンの匂い、ロイシンはチーズの匂い、フェニルアラニンはライラックの花の匂い、バリンはチョコレートの匂いを生み出す。キャラメル反応は糖の酸化による褐色化で、焦げ臭の原因となる。これらが絶妙なバランスで混ざり合い、パン特有の芳香を形成する。糖とアミノ酸の由来については、今後の考察に委ねられる。

 

Google Analytics APIの承認で苦戦したので、承認されるまでの流れをまとめてみた

/** Geminiが自動生成した概要 **/
Google Analytics APIの承認取得に苦労した著者が、その過程を詳述。OAuth同意画面の設定から始まり、Googleからの度重なるメールでの指摘に対応していく。 ホームページ、プライバシーポリシーの設置、アプリ操作動画の提出を求められ、動画はクライアントIDの表示や言語設定など細かい指示に従い作成し直した。最終的に承認を得るまで、動画の翻訳やスコープ設定の不備など、多くの修正を余儀なくされた。

 

宝塚中部の白い土

/** Geminiが自動生成した概要 **/
宝塚周辺、特に六甲山麓は、風化した花崗岩質の土壌が広がっているため、水はけが良く保水性が低いという特徴を持つ。この土壌は、一般的に野菜栽培には不向きとされ、水や肥料を多く必要とする。しかし、逆に水はけの良さを活かし、水やりを控えることで根張りを良くする栽培方法も可能となる。 また、この地域は造園業が盛んで、庭石や石垣などに花崗岩が利用されている。これは、花崗岩が風化しやすく加工しやすいという特性を持つためである。さらに、六甲山系の豊富な森林資源も、造園業の発展に貢献している。このように、宝塚周辺の造園業は、地域の土壌や地形といった自然環境に深く結びついている。

 

若草山山頂の赤い土

/** Geminiが自動生成した概要 **/
奈良公園の若草山山頂で赤い土が目立ち、その地質を調べたところ、1500万年前〜700万年前に噴火した火山の岩石(安山岩・玄武岩類)だとわかった。これは安山岩が風化したものと考えられる。 若草山の赤い土は、日本列島が形成された頃の火山活動の名残である。奈良には二上山、曽爾高原、若草山など、かつて火山だった場所が点在している。夜久野高原の宝山でも同様の赤い土が見られ、火山活動と関連があると推測される。

 

曽爾三山を含む室生火山群の柱状節理

/** Geminiが自動生成した概要 **/
曽爾高原の土壌を理解するため、地形に着目する。曽爾高原は室生火山群に属し、倶留尊山や屏風岩といった柱状節理が見られる。屏風岩は流紋岩質溶結凝灰岩で、倶留尊山も同様の組成と推測される。つまり、ススキが生える土壌は流紋岩質岩石の影響を受けている可能性が高い。さらに、曽爾村の地質は花崗岩や片麻岩を基盤に、室生火山群の溶岩・火山灰が堆積し、浸食によって深い谷が形成された。しかし、曽爾高原の独特な地形の成因は未解明である。

 

フルキサメタミドの作用機構

/** Geminiが自動生成した概要 **/
フルキサメタミドは、昆虫の神経伝達物質GABAの働きを阻害することで殺虫効果を発揮する。昆虫はGABA作動性クロライドイオンチャンネルを通じて神経の興奮を抑制するが、フルキサメタミドはこのチャンネルを阻害し、過剰な興奮を引き起こす。一方、ヒトを含む脊椎動物ではGABAの作用機序が異なり、このチャンネルを持たないため、フルキサメタミドは昆虫選択的に作用する。有機リン系殺虫剤とは異なる作用機序のため、耐性昆虫にも効果的。GABAは野菜の旨味成分としても知られるが、フルキサメタミドの作用は昆虫の神経系に特異的であるため、人体への影響は少ないと考えられる。

 

環境に優しい土壌消毒のダゾメット

/** Geminiが自動生成した概要 **/
土壌消毒剤ダゾメットは、土壌中で分解されメチルイソチオシアネート(MITC)を生成することで殺菌・殺虫作用を発揮する。MITCは生物の必須酵素の合成阻害や機能停止を引き起こす。ダゾメットはクロルピクリンに比べ使用頻度が高い。MITCはアブラナ科植物が害虫防御に生成するイソチオシアネート(ITC)の一種であり、ジャスモン酸施用で合成が促進される。ITCの殺虫作用に着目すると、緑肥カラシナを鋤き込むことでダゾメット同様の効果が期待できる可能性がある。これは、カラシナの葉に含まれる揮発性のITCが土壌に充満するためである。土壌還元消毒は、米ぬかなどを土壌に混ぜ込み、シートで覆うことで嫌気状態を作り、有害微生物を抑制する方法である。この方法は、土壌の物理性改善にも効果があり、環境負荷も低い。

 

土壌消毒について見直す時期ではないだろうか?

/** Geminiが自動生成した概要 **/
土壌消毒を見直すべき時期が来ている。深く耕すと病原菌が浮上する懸念があるが、土壌消毒剤は深部に届かない可能性がある。糖蜜やエタノールを用いた土壌還元消毒は深部の病原菌を減少させる効果がある。これは米ぬかによる土壌還元消毒と同じ原理で、嫌気環境下で有機物が分解される際に土壌の酸化還元電位が変化し、過酸化水素や二価鉄が生成され、ヒドロキシラジカルによる強力な滅菌作用が生じるためと考えられる。土壌改良材、米ぬか/糖蜜、酸素供給材を組み合わせ、マルチで覆うことで、病原菌の生育環境を改善できる可能性がある。連作を避け、ソルガムなどの緑肥を栽培すれば更に効果的。米ぬかは菌根菌増殖や食害軽減にも繋がる。

 

耕土の深い層に潜伏した病原菌

/** Geminiが自動生成した概要 **/
土壌の深層に潜む病原菌、特に青枯病菌や軟腐病菌は、嫌気性のため酸素が少ない環境で生存できる。深く耕すとこれらの菌が表層に上がるが、それが活発化につながるかは不明。土壌消毒剤は深層の青枯病菌には効果がないという報告もあり、深層の病原菌が感染に影響するなら、薬剤消毒は無意味となる可能性も示唆されている。

 

ヤシガラを試したら綺麗な細根が増えたらしい

/** Geminiが自動生成した概要 **/
ヤシガラ使用で植物の細根が増えたという話から、ヤシガラに含まれる成分の影響を考察。ヤシガラはココヤシの油粕で、カリウムの他、油脂由来の脂肪酸が含まれる可能性がある。脂肪酸は通常肥料成分として注目されないが、アーバスキュラー菌根菌(AM菌)の培養に脂肪酸が有効だったという研究結果から、ヤシガラ中の脂肪酸がAM菌を活性化し、ひいては植物の発根を促進した可能性が考えられる。特に、ヤシ油に含まれるパルミトレイン酸はAM菌の増殖に効果がある。ただし、ヤシガラの油脂含有量によっては効果がない可能性もある。

 

野菜の美味しさとは何だろう?香気

/** Geminiが自動生成した概要 **/
食べ物の香りは、おいしさを感じる上で重要な要素。口に含む前の鼻先香(オルソネーザル嗅覚)と、咀嚼後の戻り香(レトロネーザル嗅覚)があり、後者が特に重要。鼻詰まりで味が分かりにくくなるのはこのため。ゴボウの香りはメトキシピラジン類が主要成分で、ワインやコーヒーにも含まれる。香りと臭いの違いは、鼻のセンサーに合うか合わないかの違いで、量によっても感じ方が変わる。お茶やコーヒーの世界では、鼻先香、口中香、立ち香、含み香など、様々な呼び名がある。ゴボウの香りにはその他、フェニルアセトアルデヒド等の成分も関与している。

 

Jenkins + ヘッドレスChromeでテスト自動化の省力化

/** Geminiが自動生成した概要 **/
JenkinsによるSOY CMS/Shopのテスト自動化で、ビルド時間が5時間超となり、Chromeのクラッシュが発生していた。メモリ使用量削減のため、ヘッドレスChromeを導入。php-webdriverのコードにChromeOptionsを追加することで、ヘッドレスChromeでのテスト実行が可能になった。仮想デスクトップ(Xvfb)も不要となり、メモリ使用量が削減され、格安VPSでの高負荷テスト継続に期待が持てる。

 

野菜の美味しさとは何だろう?ポリアミン

/** Geminiが自動生成した概要 **/
野菜の美味しさ成分の一つ、ポリアミン、特にプトレシンについて解説した記事です。プトレシンはオルニチンから合成され、植物体内ではポリアミン酸化酵素によって分解されて過酸化水素を生成し、これが植物の生体防御(気孔開閉、細胞壁強化、免疫)に関与します。ポリアミンは貝やダイズに多く含まれ、過剰摂取でなければ人体にも良い影響がある可能性が示唆されています。さらに、ポリアミンは植物の高温、低温、塩、浸透圧、カリウム欠乏、低酸素といった様々なストレス軽減にも関与しており、アミノ酸肥料と微量要素でストレス回避できる可能性についても触れられています。

 

脂肪酸の生合成

/** Geminiが自動生成した概要 **/
カプサイシンはトウガラシの辛味成分で、バニリルアミンと分岐脂肪酸がアミド結合した構造を持つ。辛味度はスコビル単位で表され、純粋なカプサイシンは1600万単位と非常に高い。人体への作用は、TRPV1受容体を活性化し、熱さや痛みを感じさせる。また、内臓脂肪の燃焼促進や食欲抑制、血行促進などの効果も報告されている。しかし、過剰摂取は胃腸障害を引き起こす可能性がある。農林水産省はカプサイシンを含むトウガラシの適切な利用と注意喚起を促している。

 

PHPで並行処理

/** Geminiが自動生成した概要 **/
PHPで並行処理を行う方法として、exec関数でジョブファイルを実行する方法が紹介されています。ジョブファイルはバックグラウンドで実行され、メインプロセスとは独立して動作します。ただし、ジョブファイルの結果をメインプロセスに返すことができないという欠点があります。 記事では、Google OAuthを使ったジョブで、メインプロセスのセッション情報をジョブファイルで利用する方法についても説明されています。ジョブファイルの引数にセッションIDを渡し、ジョブファイル内でセッションを復元することで、アクセストークンなどのセッション情報を共有できます。 最終的に、ジョブの結果をメインプロセスで扱う方法については触れられていませんが、Go言語やNode.jsのような並行処理に適した言語の使用が推奨されています。

 

引き潮時の海岸の生物たち

/** Geminiが自動生成した概要 **/
トマトの肥料に関する所用で倉橋島を訪れた後、隣の能美島へ。海岸沿いで車を停め、引き潮の海岸を観察した。花崗岩質の石にはフジツボが付着し、緑藻が生息していた。満潮時には海中に浸かるこの場所は、緑藻にとって太陽光に晒される過酷な環境である。海藻は種類によって生息する深さが異なり、浅瀬の緑藻は強い光から身を守るため緑の色素を持つという説を改めて実感した。近くに別の藻類も見つけたが、それは次回に。

 

広島の倉橋島のトマトのグループの方向けに肥料の話をしました

/** Geminiが自動生成した概要 **/
広島県呉市倉橋島で、お宝トマト生産者グループ向けに肥料の講演を行いました。倉橋島は花崗岩で構成され、真砂土が広がるため水や肥料が流れやすい土壌です。このため、基肥設計の際に土壌特性を考慮する必要があります。花崗岩質土壌の特徴を理解し、適切な肥料設計を行うことで、トマト栽培の成功に繋げることができます。講演では、これらの点に重点を置いて説明しました。関連情報として、花崗岩や真砂土に関する記事へのリンクも紹介されています。

 

苦味や渋みのタンニン

/** Geminiが自動生成した概要 **/
二次代謝産物とは、一次代謝過程で必須ではないが、植物の生存や成長に有益な化合物のこと。主に保護やコミュニケーションに使用される。例として、色素は植物に色を与え、捕食者や病原体から保護し、また花粉を運ぶ動物に視覚的シグナルを送る。また、香りや味を与えるテルペノイドは、虫を寄せたり、捕食者を遠ざける。さらに、病原体に対する防御作用を持つアルカロイドや、紫外線から保護するフラボノイドも二次代謝産物である。

 

高槻のアルカリ性温泉と美味しい唐揚げ

/** Geminiが自動生成した概要 **/
高槻市にある祥風苑は、アルカリ性純重曹泉で知られる温泉で、地元の鶏肉を使用した唐揚が日本唐揚協会から金賞を受賞しています。この唐揚は、温泉の重曹泉で揚げることでタンパク質が変性し、独特的で柔らかい食感となります。また、祥風苑では飲泉用の温泉水も提供されており、胃腸薬の成分に似ており、内臓の調子を整える効果があるそうです。これらの情報は、地域の特産品や地元ならではの料理からも土地の特徴を理解できる可能性を示唆しています。

 

ワインのポリフェノールに迫る

/** Geminiが自動生成した概要 **/
ワインのポリフェノールは、熟成過程で変化します。ブドウの果皮に含まれるアントシアニンとタンニンは、酸に触れて生成されるカテキンと反応し、渋味や苦味を生み出します。 カテキンは酸素と反応してキノンを形成し、ワインにアルデヒドを増やします。さらに、ポリフェノール酸化酵素(PPO)がカテキンの縮合を引き起こし、ワインの色をくすませます。 オーク樽は、ワインを酸素と接触させ、タンニンを放出します。樽の大きさや使用歴によって、ワインに影響を与えるタンニンの量が異なります。

 

丹波の黒大豆の黒い色素

/** Geminiが自動生成した概要 **/
黒大豆の黒い色は、プロアントシアニジンと呼ばれるポリフェノールによるもの。ポリフェノールは光による障害を防ぐことを目的としている可能性がある。黄大豆がポリフェノールを持たない理由は不明だが、作物の種類によって異なる защитные механизмыが進化している可能性が示唆されている。

 

丹波竜発見地周辺の地質の確認

/** Geminiが自動生成した概要 **/
丹波篠山の恐竜化石発掘地周辺の地質について調査した。発掘地は流紋岩質の山を侵食する川の堆積物にあり、白亜紀後期の有馬層群に属する。約9km離れた場所には、7千万年前の火山噴火による流紋岩にできた噴気孔化石が存在する。発掘地の東側は2億5000万年前より古い付加体で、その上に火山噴出物が覆っている構造が確認できた。これは篠山層群が古生代ペルム紀から中生代ジュラ紀の基盤岩類を覆うという地域の地質構造と一致する。これらの情報から、周辺の地層観察で新たな発見が期待できる。

 

SOY Shopでカテゴリ商品ブロック生成プラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY Shop用のプラグインで、複数カテゴリの商品一覧を1ページに表示できる機能を追加しました。標準のナビゲーションページではカスタムサーチフィールド等のプラグインとの連携が難しいため、簡易的に商品ブロックと同等の機能を実現するプラグインを開発。管理画面で生成個数を指定すると、`<shop:module>`と`<block:id="item_list">`を使った記述が生成され、`category`属性にカテゴリIDを指定することで各カテゴリの商品一覧が表示されます。カテゴリIDはカテゴリ詳細画面のURL末尾の数字で確認できます。今後はカスタムサーチフィールドにも対応した商品ブロック作成プラグインを開発予定です。現在はカテゴリと表示件数、カスタムサーチフィールドに対応したプラグインを公開中です。

 

苦土が多い不思議な砂質土

/** Geminiが自動生成した概要 **/
福岡県糸島市の海岸沿いの畑の土壌分析結果で、苦土(マグネシウム)が異常に高く、カリウムも多いという不思議な現象が見られた。現地調査の結果、畑の土は近隣の森を切り崩した土で客土されており、周囲の地質は花崗岩主体だが、斑れい岩質の深成岩も存在する事がわかった。斑れい岩は苦土や鉄を多く含むため、客土された土に斑れい岩由来の成分が含まれていると推測される。この仮説は、畑の土から緑色の鉱物粒子が確認されたこと、土壌図で畑が森林土に分類されていることからも裏付けられる。通常の砂質土壌とは異なり、この畑では苦土による緩衝作用は期待できないため、腐植による緩衝に注力する必要がある。近隣の他の畑は通常の砂質土壌で、今回の畑は特殊な事例と言える。

 

佐賀平野は元々海だったかもしれない

/** Geminiが自動生成した概要 **/
佐賀平野の麦畑の広がりから、麦作に適した土壌なのか考察している。平野は元々は海で、干拓により陸地化された歴史を持つ。縄文海進期には海抜が高く、吉野ヶ里遺跡の存在からも海が近かったことが推測される。筑後川による土砂堆積で形成された平野の土壌は、風化しにくい岩石由来で、栽培には不利な可能性がある。鳥取砂丘の例を挙げ、砂地でも大麦は育つことから、佐賀平野でも他の作物が育ちにくい環境下で、高カロリーな大麦が選ばれたのではないかと推測している。

 

凝灰岩の採石場跡に行ってきた

/** Geminiが自動生成した概要 **/
二上山の凝灰岩に興味を持った著者は、大阪側の太子町にある鹿谷寺跡を訪れた。鹿谷寺跡は、8世紀頃に凝灰岩の採石場跡に造られた寺院跡である。二上山は約1500万年前に噴出した火山岩類から成り、様々な火山岩や凝灰岩が見られる。著者は凝灰岩の風化土の色を調べ、植物の根が入り込んだ箇所を観察した。今回は珍しい溶結凝灰岩を近くで見ることができなかったが、数年後に再訪して観察したいと考えている。

 

摂津峡のホルンフェルス

/** Geminiが自動生成した概要 **/
摂津峡のホルンフェルスについての記事です。著者は大阪市立自然史博物館のガイドを参考に摂津峡を探索し、砂岩と泥岩がホルンフェルス化している様子を観察しました。ホルンフェルスは熱変成作用によって硬くなった岩石で、ゴツゴツとした岩肌が特徴です。比叡山のホルンフェルスと同様に風化しにくいため、摂津峡の独特の渓谷地形形成に影響を与えていると考察しています。地質図で確認すると、ホルンフェルス化した堆積岩は、花崗岩とチャートに挟まれており、これらの硬い岩石が川の浸食に抵抗し、狭い渓谷ができたと考えられます。以前の考察よりも一歩進んだ理解に至ったと述べています。

 

一生に一度はお伊勢参り

/** Geminiが自動生成した概要 **/
伊勢神宮は中央構造線の境に位置し、地質学的に興味深い場所にある。周辺の岩石は玄武岩の付加体と三波川変成帯から成り、どちらも鉄分を多く含む。鉄分豊富な岩石は緑や黒色を呈し、伊勢神宮の重要な場所の石にも緑色の石が多く使われている。これらの岩石は地磁気や雷の影響で磁気を帯びる可能性がある。最近、人間にも磁気を感じる第六感があるという研究結果が報告された。伊勢神宮の位置と緑色の石の使用は、古代人が地球のダイナミックな活動、特に磁気に何かを感じていた可能性を示唆している。

 

京都亀岡の出雲大神宮の真名井の水

/** Geminiが自動生成した概要 **/
京都亀岡市にある出雲大神宮の境内には、「真名井の水」と呼ばれる湧き水が存在する。この水は御蔭山の接触変成岩層から湧き出ており、古来より絶えず流れ続けている。しかし、周辺の地質図を見ると、神社の付近は付加体で構成され、深成岩は見当たらない。湧き水と地質の関係について疑問が生じ、海底火山の影響や深成岩の規模の小ささといった可能性が考えられるが、結論に至るには更なる知識と経験が必要である。

 

SOY Inquiryの自動送信メールの多言語化

/** Geminiが自動生成した概要 **/
SOY Inquiryで多言語サイトを構築する際、問い合わせ番号や日時が日本語で送信される問題を解決する方法です。mail.user.phpをカスタマイズし、メール本文中の「問い合わせ番号」「問い合わせ日時」を各言語に置換します。コード例では、explodeで本文を分割し、strposで該当箇所を特定、str_replaceで置換後、implodeで再構築しています。この方法で各言語用のフォームを用意すれば、多言語対応の問い合わせメールを実現できます。

 

長崎県諫早市の諫早公園に行ってきた

/** Geminiが自動生成した概要 **/
仕事で諫早市を訪れ、諫早公園の眼鏡橋を見学。橋を渡った先には露頭があり、700万年前からの火山岩屑なだれの堆積物と判明。地衣類や苔で風化した白い粒子と黒い腐植が露出し、脆く崩れやすい凝灰岩の可能性を考察。木の根が岩に入り込んでいる様子から、風化のしやすさが木の生育に影響を与えていると推測。諫早公園は眼鏡橋だけでなく、国指定天然記念物の暖地性樹叢もあり、樹木の生育と地質の関連性を示唆する興味深い場所だった。

 

京見峠の杉坂の船水

/** Geminiが自動生成した概要 **/
醒ヶ井宿の居醒の清水は、中山道六十一次のうち江戸から数えて五十一番目の宿場町、醒ヶ井に位置する湧水。豊富な湧水量を誇り、年間を通して水温は14-16℃で安定している。水質は弱アルカリ性で、硬度は低く軟水。名水百選にも選ばれており、周辺住民の生活用水としても利用されている。居醒の清水は、地蔵川の水源でもあり、この川では梅花藻と呼ばれる水中花が見られる。梅花藻はキンポウゲ科の水生植物で、清流にしか生息しない。夏には白い小さな花を咲かせ、水中に咲く姿は涼しげで美しい。醒ヶ井宿では、この貴重な水資源と梅花藻を大切に保護し、観光資源としても活用している。

 

ポリフェノールとは何か?フェニルプロパノイド類

/** Geminiが自動生成した概要 **/
ポリフェノールの一種、フェニルプロパノイド類について解説。フェニルアラニンが脱アミノ化されて生成されるケイヒ酸を基とする化合物群である。植物体内での役割は既出のため割愛し、ヒトへの健康効果として抗酸化作用、α-グルコシダーゼ阻害作用、リノール酸自動酸化阻害作用などが挙げられる。続く章ではα-グルコシダーゼについて掘り下げる。

 

ポリフェノールとは何か?フラボノイド類

/** Geminiが自動生成した概要 **/
光合成の明反応は、葉緑体のチラコイド膜で起こり、光エネルギーを化学エネルギーに変換する過程です。光エネルギーは、クロロフィルなどの色素によって吸収され、電子を高エネルギー状態に励起します。励起された電子は電子伝達系を移動し、その過程でATP(アデノシン三リン酸)とNADPHが生成されます。水分子は分解され、電子伝達系に電子を供給し、酸素が発生します。生成されたATPとNADPHは、続く暗反応で二酸化炭素から糖を合成する際に利用されます。つまり、明反応は光エネルギーを利用して、暗反応に必要なエネルギーと還元力を供給する役割を担っています。

 

ヨモギはビタミンAが豊富らしい

/** Geminiが自動生成した概要 **/
ヨモギの効能について調べたところ、抗酸化作用が高く、ビタミンA(β-カロテン、レチノール)も豊富だった。栄養価は土地に依存するが、マグネシウムよりもカリウムとカルシウムが目立つ。ヨモギ独特の苦味は、マグネシウムではなく、カリウムやカルシウム、あるいはシュウ酸やポリフェノール等の有機質成分が要因かもしれない。香りの主成分はシネオール、ツヨン、β-カリオフィレン、ボルネオール、カンファーだが、栄養価についてはここでは触れない。

 

SOY Shopで注文番号をCODE39規格でバーコードを作成してみる

/** Geminiが自動生成した概要 **/
SOY Shopで注文番号をバーコード化できるプラグインを開発。CODE39規格を採用し、ハイフンを含む注文番号に対応。生成されたバーコードはCCDバーコードリーダーで読み取り可能だが、初期設定では長すぎて認識エラーが発生。リサイズで対応。プラグインはsaitodev.coからダウンロード可能。バーコード生成にはPHP Barcode Generatorを使用。現時点ではSOY Shop標準機能としての用途は未定だが、活用アイディア募集中。

 

SOY Shopで商品毎でJANコードを登録しバーコードを作成してみる

/** Geminiが自動生成した概要 **/
SOY Shopで商品ごとにJANコードを登録・バーコード表示するプラグインが開発されました。管理画面の商品詳細画面にJANコード入力欄が追加され、入力するとバーコード画像が生成されます。生成されたバーコードは市販のバーコードリーダーで読み取り可能であることが確認されています。プラグインはsaitodev.coからダウンロードできます。バーコード生成にはPHP Barcode Generatorが使用されています。現状、SOY Shop標準機能でのこのプラグインの用途は未定ですが、活用アイデアは問い合わせフォームから募集中です。

 

ビタミンB3のナイアシン

/** Geminiが自動生成した概要 **/
藍藻から発見された7-デオキシ-セドヘプツロース(7dSh)は、植物の芳香族アミノ酸などの合成経路であるシキミ酸経路を阻害する糖である。シキミ酸経路は植物や微生物に存在するが、動物には存在しないため、この経路を標的とすることで、植物特異的な作用を持つ除草剤の開発が可能となる。7dShは、シキミ酸経路の酵素である3-デオキシ-D-アラビノ-ヘプツロソネート7-リン酸合成酵素(DAH7PS)を阻害することで、芳香族アミノ酸、ビタミン、植物ホルモンなどの合成を阻害し、最終的に植物の生育を阻害する。これは、新たな作用機序を持つ除草剤開発の糸口となる可能性がある。

 

SOY Inqiuryでお問い合わせ内容をコンパクトにする

/** Geminiが自動生成した概要 **/
SOY Inquiryで長い項目名によってメール表示が崩れる問題を解決する方法です。フォームテンプレートディレクトリ(例:default)にmail.admin.phpを作成し、PHPでメール内容を整形します。 提供されたコードは、メール本文の各行を処理し、コロン以降の空白文字を削除して出力します。これにより、項目名と入力値の間のスペースが詰まり、コンパクトな表示になります。管理者宛メールのみ変更され、公開側の表示は変わりません。

 

京都北部の舞鶴全般の土壌の考察

/** Geminiが自動生成した概要 **/
舞鶴でのグローバック栽培に関する勉強会をきっかけに、地域の土壌と水質について考察。グローバック栽培は初期費用が安く土壌病害のリスクも低い一方、水耕栽培のため原水のpH調整が重要となる。舞鶴のある施設では原水pHが7.5と高く、周辺の地質が斑れい岩であることを確認。斑れい岩は塩基性火成岩で、pHを高める鉱物を多く含むため、水質も高pHになると推測。さらに、塩基性火成岩はカリウム含有鉱物が少なく、土壌分析の結果もカリウム不足を示唆。カリウムは根の吸水に重要で、舞鶴の栽培ではカリウム肥料の施用が必須。土壌だけでなく、散水に使う川の水のミネラル組成も考慮する必要がある。

 

SOY Shopの商品一覧ページで変則的な並び順の対応をしてみる

/** Geminiが自動生成した概要 **/
SOY Shopでカテゴリごとに商品一覧の並び替え順を変える方法。カスタムフィールドで「使用人数」や「使用温度」などの項目を作成し、ソートに利用する設定にする。データベースのカラム型を数値に変更。soyshop.item.list拡張ポイントでプラグインを作成し、getSortメソッドでカテゴリごとに異なるソート条件を返す。テントなら使用人数の降順、シュラフなら使用温度の昇順など。標準設定は価格の昇順にする。URLを変えずに同一ページで並び替え順を変えられるため、SEOにも有効。

 

SOY Shopの管理画面からの注文で商品オプションプラグインの見直し

/** Geminiが自動生成した概要 **/
京都農販は、多様なニーズに対応するパイプハウス施工の実績を持つ。カタログでは、強度と耐久性に優れた単棟ハウスから、連棟ハウス、特殊ハウスまで幅広い施工事例を紹介。環境制御技術を駆使した温度・湿度管理、CO2施用、養液栽培システムなど、高品質な農作物生産を支援する設備も提案。 耐候性・耐食性に優れた資材を使用し、積雪や強風対策も万全。施工事例を通して、設計から施工、アフターサービスまで一貫体制によるサポートを提供することで、顧客の農業経営の成功に貢献する姿勢を示している。カタログは、パイプハウス導入を検討する農業者にとって、貴重な情報源となるだろう。

 

土作りの視察に行くなら赤黄色土の地域へ

/** Geminiが自動生成した概要 **/
客土、つまり土壌改良のための土の入れ替えは、地域によって定着度に差がある。愛知県の渥美半島は赤黄色土という痩せた土壌が広がり、客土が必須の地域。良質な土壌がないため、近隣の豊橋市で川砂を採取し客土に用いるが、近年は入手困難になっている。一方、黒ボク土が広がる宮崎県都城市では、水はけ改善のため客土を行う地域もあるものの、必ずしも必須ではない。土壌改良材の発達により客土の必要性が低下した地域もある。このように、土壌の性質や入手可能な資材、歴史的背景によって客土の定着度は地域差が大きい。技術の進歩も客土の必要性に影響を与えている。

 

SOY Shopで下書き通知プラグインを作成しました

/** Geminiが自動生成した概要 **/
京都農販は、SOY Shopを活用し農業用パイプハウスの見積り作成システムを構築。従来のエクセル作業を1時間程度に短縮、大幅な効率化を実現した。しかし、見積り作成途中での保存・復元に関するUIの課題から、下書き通知プラグインを開発。管理画面の新着ページに下書きの有無を通知し、バックアップ復元へのアクセスを容易にしたことで、作業開始の遅延を解消。 この改善により、マニュアル作成の手間も削減。パイプハウス見積り作成の効率化をさらに促進している。詳細はsaitodev.coで公開されているパッケージから確認可能。京都農販のパイプハウス施工事例は別途PDFで公開されている。

 

高槻樫田温泉が来週で休館になるので行ってきた

/** Geminiが自動生成した概要 **/
高槻樫田温泉が2018年の台風21号の被害により休館。温泉自体は無事だったが、木質バイオマス燃料「ペレット」を生産するための周辺林が被災し、運営継続が困難になった。環境に配慮した運営を行っていた同施設の閉鎖は、大型化する台風被害への対策の必要性と、自然と調和した持続可能な社会の重要性を改めて示すものとなった。温泉成分や周辺地質への言及を通し、筆者は環境問題への関心の高さを示している。樫田温泉周辺は植物観察にも適した場所で、筆者にとって思い入れのある場所であったことが伺える。

 

ショウガの根茎腐敗病とストラメノパイル

/** Geminiが自動生成した概要 **/
ショウガの根茎腐敗病は、卵菌類(フハイカビ)によるもので、根茎が腐敗する。卵菌類はかつて菌類とされていたが、現在ではストラメノパイルという原生生物に分類される。細胞壁にキチンを含まないため、カニ殻肥料によるキチン分解促進や、キチン断片吸収による植物免疫向上といった、菌類対策は効果がない可能性がある。卵菌類はかつて色素体を持っていた藻類であった可能性があり、この情報は防除対策を考える上で重要となる。

 

Go言語でSearch Consoleの値を取得してみる

/** Geminiが自動生成した概要 **/
Go言語でGoogle Search Console APIから検索クエリデータを取得する方法を解説しています。必要な手順として、Google Cloud ConsoleでSearch Console APIを有効化し、認証情報を作成、Search Console側でユーザー権限を設定します。Goのコードでは、`golang.org/x/oauth2`、`google.golang.org/api/webmasters/v3`ライブラリを使用し、認証情報`secret.json`を用いてSearch Console APIにクエリを送信、過去7日間の検索クエリデータを取得・表示します。

 

川には魅力的な岩がたくさん

/** Geminiが自動生成した概要 **/
京都盆地の東端にある川の上流で、チャートの露頭を観察した。写真のように、横に線が入った岩が斜めに傾斜している。ここは東西圧縮で沈降した地域であり、20万分の1日本シームレス地質図で確認するとチャート層であることがわかる。露頭の傾斜は地質学的に興味深く、どのように形成されたのか想像力を掻き立てる。身近な場所でも地質学的な情報が得られることを実感した。

 

SOY CMSのキャッシュモードで表示の高速化

/** Geminiが自動生成した概要 **/
SOY CMSのブログでデータベースをMySQLからSQLiteに変更することで、パフォーマンス向上とデータ管理の簡素化が期待できます。特に共有サーバーなど、MySQLのチューニングが難しい環境では効果的です。変更手順は、まずphpMyAdmin等でMySQLのデータをエクスポートし、SQLite形式に変換します。次に、SOY CMSの設定ファイルでデータベース接続設定をSQLiteに変更し、変換したデータをインポートします。記事データが多い場合、変換とインポートに時間がかかるため、夜間などアクセスが少ない時間帯に行うのがおすすめです。また、SQLiteはMySQLと比べて同時アクセス性能が劣るため、高トラフィックのサイトには不向きです。変更前にデータベースのサイズやアクセス状況を確認し、SQLiteのメリット・デメリットを理解した上で検討することが重要です。

 

Go言語を使ってJSONから複数のデータを取得してみる

/** Geminiが自動生成した概要 **/
Go言語で複数のJSONデータを読み込む方法を解説しています。sample.jsonファイルには、配列[]とオブジェクト{}を用いて複数のデータが記述されています。main.goでは、`[]Sample`型の変数を定義し、`json.Unmarshal`でJSONデータをデコードします。配列の要素へはインデックスを指定してアクセスし、各キーの値はドット記法で取得できます。例えば、`samples[1].Name`は2番目のデータの"name"キーの値("kumata")を取得します。

 

Go言語でJSON

/** Geminiが自動生成した概要 **/
Go言語でJSONを扱う方法について解説されています。 `sample.json`ファイルにID、名前、読み仮名などのデータを保存し、`main.go`でそのデータを読み込んで利用する方法が示されています。 `ioutil.ReadFile`でJSONファイルを読み込み、`json.Unmarshal`でGoの構造体`Sample`に変換します。`Sample`構造体はJSONデータのキーに対応するフィールドを持ちます。変換後、`sample.Name`のようにアクセスすることで、JSONデータの値を取得できます。

 

妻がプログラミングをはじめてGo言語とQtでアプリを公開するまで

/** Geminiが自動生成した概要 **/
妻にプログラミングを教えた動機は、事務職希望の女性こそプログラミングスキルを身につけるべきだという考えに基づいている。事務作業はルーティン化しやすい反面、変化への対応が求められる。プログラミングは論理的思考力や問題解決能力を養い、変化への対応力を高める。これらは事務職で役立つだけでなく、キャリアの幅を広げる可能性も秘めている。妻は最初の実験台であり、私自身にとっても新たな言語を教える貴重な経験となった。将来的には、プログラミング教育の普及を通じて、女性がより活躍できる社会を目指したいと考えている。

 

SOY CMSのブログで年毎に月別アーカイブのリンクを出力するブログブロックを追加しました

/** Geminiが自動生成した概要 **/
SOY CMSのブログで、長年の運用による月別アーカイブの増加でデザインが崩れる問題を解決するブログブロックが追加されました。従来の縦に長いアーカイブ表示を、年毎に折りたたみ可能な形式で出力します。 新しいブロック`b_block:id="archive_every_year"`は、`cms:id="year"`で年を、`cms:id="archive"`で各月のアーカイブリンクを生成し、年毎に異なるIDを割り当てます。これにより、jQuery等で年毎の折りたたみ表示を実装可能になります。表示例では2018年、2017年、2016年と年ごとに月別アーカイブをまとめて表示しています。新機能はパッケージに含まれ、サイト(https://saitodev.co/soycms/)からダウンロードできます。ただし、古いバージョンからのアップデートでは、ブログページ毎のブロック使用設定でarchive_every_yearを有効にする必要があります。

 

ナメコの粘液

/** Geminiが自動生成した概要 **/
ナメコのヌルヌル成分はムチンと呼ばれる糖タンパク質の混合物で、幼菌時に分泌され、成長と共に消失する。ムチンは細胞保護や潤滑物質として働き、高い保湿性で幼菌の水分蒸発を防ぐ役割を持つ。ムチンは人体にも重要だが、この記事では詳細は割愛。補足として、ムチンは粘性のある糖タンパク質の慣用的な総称だが、化学物質としては多様であり、粘性のない糖タンパク質も存在するため、化学物質名としては使用が減少傾向にある。

 

宝塚周辺は造園業が盛んな地域

/** Geminiが自動生成した概要 **/
宝塚周辺の造園業が盛んなのは、土壌がマツの栽培に適していたため。マツは土壌が肥えていない、遷移の初期段階に育つ木である。宝塚周辺の地質は流紋岩質や花崗岩質の火成岩由来の真砂土で、粘性が高く腐植をため込みにくい。このため、肥沃な土壌を必要としないマツの生育に適していた。宝塚の人々は土壌の特性を理解し、マツ栽培を発展させ、それが造園業の盛んな地域へと繋がった。海岸線にもマツが多く見られるのは、海岸の砂も風化しにくい性質を持つためである。鳥取砂丘のような未熟土でもマツは生育できる。

 

SOY CMSのブログの説明でWYSIWYGエディタに対応しました

/** Geminiが自動生成した概要 **/
SOY CMSのブログ説明欄がWYSIWYGエディタに対応しました。従来はHTML編集ができなかったブログの説明文を、リッチテキストで記述できるようになりました。 これを実現する「ブログ説明WYSIWYGプラグイン」が新たに開発され、HTMLを許可する`b_block:id="blog_description_raw"`タグも追加されました。このプラグインにより、ブログページの設定画面で、説明文入力欄がWYSIWYGエディタに切り替わり、より表現力豊かなブログ説明を作成できます。 ダウンロードはsaitodev.co/soycms/から可能です。この改良は、以前のカテゴリー詳細表示プラグインへのWYSIWYGエディタ対応に続くものです。

 

石山寺硅灰石

/** Geminiが自動生成した概要 **/
石山寺は源氏物語ゆかりの寺であると同時に、国指定天然記念物の珪灰石で有名です。珪灰石は石灰岩が花崗岩マグマの熱変成を受けて生成される接触変成岩の一種で、石灰岩の成分である方解石とマグマ中の珪酸が反応してできたカルシウム珪酸塩鉱物です。奈良県洞川温泉の五代松鍾乳洞周辺で見られるスカルン鉱床と生成プロセスが類似しています。石山寺境内には珪灰石だけでなく、大理石も存在し、境内を登る過程で変成岩の境界を観察できる可能性があります。石山寺周辺の地質は複雑に変形した付加体やチャートで構成されています。

 

Go言語の構造体2

/** Geminiが自動生成した概要 **/
Go言語の構造体について解説しています。大文字で始まるフィールドは外部パッケージからアクセスできますが、小文字で始まるフィールドはアクセスできません。小文字フィールドへのアクセスは、パッケージ内に`Set~`や`Get~`のようなメソッドを定義することで実現します。具体例として、`Person`構造体の`name`フィールド(小文字)へのアクセス方法を説明しています。`pac`パッケージ内で`SetName`メソッドを定義し、`main`パッケージから`person.SetName("ryoko")`のように呼び出すことで、`name`フィールドに値を設定できます。

 

Go言語でQtのQGroupBoxを使ってみる

/** Geminiが自動生成した概要 **/
Go言語でQtのQGroupBoxを使って、フォームレイアウトとグリッドレイアウトをグループ化する方法を示す。QGroupBoxは、ウィジェットをグループ化し、タイトル付きのフレームで囲む。サンプルコードでは、QFormLayoutとQGridLayoutをそれぞれQGroupBoxで囲み、それらを新たなQGridLayoutに配置することで、整理されたUIを構築している。 `widgets.NewQGroupBox2("title",nil)`でタイトル付きのグループボックスを作成し、`SetLayout`メソッドでレイアウトをセットする。このようにQGroupBoxを使うことで、複雑なレイアウトも構造化しやすくなる。

 

SOY CMSで記事一覧をカレンダー形式で表示する

/** Geminiが自動生成した概要 **/
SOY CMS用の「記事カレンダー」プラグインが開発されました。ブログ記事をカレンダー形式で表示し、投稿日を視覚的に把握できます。記事タイトルだけでなく、カスタムフィールドの内容も出力可能で、サムネイルプラグインと組み合わせることで画像表示も可能です。これにより、記事一覧をカレンダー上にサムネイル付きで表示するなど、柔軟な表示を実現できます。予約サイト構築など、従来のカレンダー機能とは異なる点が特徴です。サンプルは「毅と亮子のサラメシ」サイトで確認できます。パッケージはsaitodev.co/soycms/からダウンロード可能です。

 

Go言語でQtを扱ってみる on Windows

/** Geminiが自動生成した概要 **/
Windows10でGo言語とQtの開発環境を構築する方法を解説。MSYS2とQtをインストールし、Go言語のパッケージを取得・設定後、サンプルコードを実行する手順を説明。環境変数の設定やQtインストール時のコマンド、Goのパッケージ設定コマンド、サンプルコード実行コマンド、発生したエラーと解決策(libicudt61.dll不足)について記述。

 

ふくいのおいしい水 神谷の水

/** Geminiが自動生成した概要 **/
福井県恐竜博物館近くにある「神谷の水」は、700m先の山の中腹から湧き出た水を引いている。水はあっさりとして飲みやすい。水源周辺の地質は、粘性の低い安山岩・玄武岩質の火成岩で構成されている。この地質が水のおいしさにどのように影響しているかは不明だが、一つの特徴として記憶にとどめておく。 「台風でも倒伏しないイネ」に関する記述は見つかりませんでした。そのため、要約できません。

 

Go言語でQtを扱ってみる on Ubuntu

/** Geminiが自動生成した概要 **/
Ubuntu 18.04にGo言語とQtをインストールし、GoでQtアプリケーションを開発する手順を記録した記事です。Go 1.11、Qt 5.11.1をインストールし、QtのサンプルWebブラウザの実行を確認後、GoのQtバインディングパッケージ`github.com/therecipe/qt`をインストールしました。`qtsetup`コマンドでパッケージの準備中に問題が発生しましたが、`generate`終了時点で中断し、サンプルプログラムを実行したところ、正常に動作することを確認しました。

 

電子書籍 第4巻「地質と栽培」発刊しました!

/** Geminiが自動生成した概要 **/
齋藤の嫁、亮子さんの電子書籍第4巻「地質と栽培」が発刊。第3巻に続く旅の記録で、城ヶ島の砂岩凝灰岩互層や巌立峡の溶岩地形観察から、川や温泉への興味へと展開。地形、川、温泉成分、土壌、そして栽培への影響を考察する内容となっている。全48記事、約245ページ。城ヶ島、巌立峡、飛騨小坂、天川村、有馬温泉、福島県浅川町など各地の地質や湧水、温泉を分析し、黒ボク土、客土、施肥設計など栽培への応用を検討。中央構造線や三波川帯にも言及し、地質学的な視点から農業を考える示唆に富む一冊となっている。

 

大矢谷白山神社の巨大岩塊

/** Geminiが自動生成した概要 **/
福井県勝山市にある恐竜渓谷ふくい勝山ジオパークの大矢谷白山神社には、巨大な岩塊が存在する。これは、約5km離れた山頂から山体崩壊による岩屑なだれで運ばれてきた安山岩・玄武岩類である。周辺の土壌は黒ボク土ではないが、山を下ると黒ボク土も見られる。神社手前の道路沿いには、岩屑雪崩堆積物の分布を示した看板がある。勝山ジオパークは恐竜化石の発掘地として有名だが、火山活動による山体崩壊地形も特徴の一つである。

 

JavaScriptのAnalyzerNodeで音に反応して動きを変えてみる

/** Geminiが自動生成した概要 **/
Web Audio APIのAnalyzerNodeを用いて、音声でアニメーションを制御する方法を紹介しています。 円が画面端で跳ね返る単純なアニメーションに、音声の周波数データ解析を組み込みました。 周波数データが一定閾値を超えると、円の進行方向がランダムに変化します。 音が途切れてもデータが残るため、setTimeoutを用いて一定時間反応しないように制御しています。 具体的には、`analyser.getByteFrequencyData(data)`で周波数データを取得し、`data[20]`の値が閾値を超えた場合に円の移動方向を反転させています。

 

Go言語とSQLiteでプリペアドステートメント

/** Geminiが自動生成した概要 **/
SOY2DAOでプリペアドステートメントを利用するには、SOY2::Queryクラスを使用します。SQL文中の値をプレースホルダ(?)で置き換え、bindメソッドで値をバインドします。これによりSQLインジェクションを防ぎます。 例えば、`SELECT * FROM user WHERE id = ?`というSQLに対し、`$query->bind(':id', 1);`のように値をバインドします。プレースホルダ名はコロン(:)で始めます。複数の値をバインドする場合は、配列で渡すことも可能です。 プリペアドステートメントは、同じSQLを繰り返し実行する場合にパフォーマンス向上に繋がります。SOY2DAOは内部でキャッシュ機構を持ち、一度パースしたSQLを再利用するためです。 また、SQL文を簡潔に記述できるメリットもあります。

 

あの山に海底火山の跡はあるか?

/** Geminiが自動生成した概要 **/
植物の生育には二価鉄が重要で、安山岩・玄武岩質火山由来の土壌が適している。しかし、海底火山の痕跡がある山周辺の土壌も生育に良い可能性がある。海底火山はプレート移動で隆起し、玄武岩質になるため鉄分が豊富。高槻市の山で実例を確認。水源に海底火山の地質がある土地は特に恵まれている。三波川変成岩帯も鉄分に富む。徳島のある地域は海底火山由来の地質で、土地の優位性を裏付けている。地質と栽培の関係を理解するため、GPSで地質を確認できるツール「Soil & Geo Logger」を作成。周辺の地形や地質への意識で、新たな発見があるかもしれない。

 

二価鉄を求めて-後編

/** Geminiが自動生成した概要 **/
この記事は、鉱泉に含まれる二価鉄の起源を探る後編です。前編では山の岩石が水質に影響を与えていることを示唆し、後編では岩石の中でも特にかんらん石に着目しています。かんらん石は鉄やマグネシウムを含む有色鉱物で、苦土やケイ酸の供給源となるだけでなく、二価鉄(Fe2+)を含む(Mg,Fe)2SO4という化学組成を持ちます。かんらん石は玄武岩に含まれ、風化しやすい性質のため、玄武岩質の山の川はかんらん石の影響を受け、二価鉄を含む水質になると考えられます。実際に、含鉄(Ⅱ)の鉱泉の上流は玄武岩質であることが地質図から確認できます。最後に、この考察に基づき、各地の調査結果を次回報告するとしています。

 

二価鉄を求めて-前編

/** Geminiが自動生成した概要 **/
植物の生育に必須な二価鉄は、過剰症のリスクもある。岐阜県飛騨小坂の巌立峡は火山由来の渓谷で、周辺には二価鉄を含む鉱泉や湧水が存在する。地元民によると、川も含めた周辺の水はマグネシウム、カルシウム、キレート化された二価鉄が多いという。巌立峡の地質は安山岩・玄武岩類からなる非アルカリ苦鉄質火山岩類である。つまり、二価鉄を多く含む川の上流の地質は火山岩である可能性が高い。下流には食味の良い米の産地があることも興味深い。

 

Go言語とSQLiteでトランザクション

/** Geminiが自動生成した概要 **/
Go言語とSQLiteでトランザクションを実装する方法を示すコード例です。user_id=1の金額から1000円減算し、user_id=2に1000円加算する処理を、db.Begin()でトランザクション開始、tx.Commit()で終了させています。途中のエラー発生時は、それ以前の変更もデータベースに反映されません。各処理はtxオブジェクトを使ってSQLを実行し、エラーチェックを行っています。これにより、一連の操作が原子的に実行され、データの整合性が保たれます。

 

Go言語とSQLでランダムの顧客10人の注文を10000件登録してみる

/** Geminiが自動生成した概要 **/
Go言語とSQLiteを用いて、ランダムな顧客データ10,000件を生成・登録するコード例です。`orders`テーブル(id, user_id, price)を作成後、ループ処理で10,000回データ挿入を行います。顧客ID(user_id)は1から10の乱数、金額(price)は1,000から10,000の乱数を`rand.Intn()`で生成し、`strconv.Itoa()`で文字列に変換しています。SQL挿入文はプレースホルダを用いず、文字列連結で生成しています。ループ内で都度乱数シードを設定し、変数tとkをループ内で宣言することでデータ生成と挿入を繰り返します。

 

JavaScriptのWeb Audio APIで録音してみる

/** Geminiが自動生成した概要 **/
Web Audio APIを用いて録音機能を実装した。navigator.getUserMediaでマイクアクセス権を取得し、MediaRecorderで録音、10秒後に停止しsample.wavとしてダウンロードさせる。 現状は問答無用で録音開始・停止する仕様だが、将来的には取得した音の周波数を解析し、音に合わせた処理を実現したい。

 

Go言語とSQLite3でデータを取得する

/** Geminiが自動生成した概要 **/
Go言語とSQLite3を用いて、`sample.db`内の`orders`テーブルから3件のデータを取得するプログラムです。`db.Query`でSQLクエリを実行し、`rows.Next()`で各行を処理、`rows.Scan()`でid、user_id、priceの各列の値を変数に格納します。最後に`fmt.Print`と`fmt.Println`を用いて取得したデータを表示します。出力はid、user_id、priceがそれぞれ一行ずつ表示され、各レコードごとに空行で区切られます。

 

Androidの内蔵GPSのキャッシュを削除したい

/** Geminiが自動生成した概要 **/
Android内蔵GPSのキャッシュ問題で、オフライン使用時に以前の緯度経度が返ってくる現象が発生。Geolocation APIのキャッシュ設定変更では解決せず、GPS StatusアプリでGPSキャッシュのリセットを試みた。一時的に改善するも、オフラインでの再発を確認。オンラインでGPS Statusアプリを使用する必要があると推測。Soil & Geoロガーのオフライン使用は5回程度が限度と考えられる。

 

Go言語のSQLiteドライバでデータを挿入してみる

/** Geminiが自動生成した概要 **/
Go言語でSQLiteを操作し、データを挿入する手順を説明しています。まず、MSYS2を用いてSQLiteドライバをインストールします。次に、`sql.Open`でデータベースを開き、`db.Exec`でSQL文を実行します。テーブル作成の例では、`CREATE TABLE`文を変数`s`に格納し、`db.Exec(s)`で実行します。データ挿入の例では、`INSERT INTO`文を変数`t`に格納し、`db.Exec(t)`で実行します。`_ "github.com/mattn/go-sqlite3"`は必須で、手動で追記する必要があります。

 

UbuntuでAndroid Debug Bridgeを使ってみる

/** Geminiが自動生成した概要 **/
Ubuntu 18.04でAndroid Debug Bridge (ADB) を使用してAndroidアプリをデプロイする方法を紹介しています。ADBをインストール後、Go Mobileのサンプルコードをエミュレータと実機(ZTE Blade V580, Android 5.1)にデプロイしました。エミュレータではバージョン不一致でアプリは起動しませんでしたが、実機では開発者モードを有効化し、USBデバッグをONにすることで、`gomobile install`コマンドでアプリのデプロイと起動に成功しました。

 

SQLiteでデータを入れて取り出してみる

/** Geminiが自動生成した概要 **/
Windows 10 で SQLite を使い、データを操作する方法を解説しています。SQLite をダウンロード、インストールし、環境変数を設定後、コマンドプロンプトでデータベースファイル(sample.db)を作成します。SQL文を用いて、テーブル作成、データ挿入、削除、並び替え、表示など基本操作を例示しています。`CREATE TABLE` でテーブルを作り、`INSERT INTO` でデータ挿入、`SELECT * FROM` で全データ表示、`DELETE FROM` でデータ削除、`ORDER BY` で並び替え、`LIMIT` で表示件数制限を行います。DB Browser for SQLite での確認方法にも触れています。

 

Go言語のGo MobileでAndroidアプリを開発してみる

/** Geminiが自動生成した概要 **/
Ubuntu 18.04 でGo言語を用いてAndroidアプリ開発を行う手順を解説。Go Mobileを利用し、サンプルコードをAndroid端末で実行するまでを扱う。 開発環境としてJava8、Android NDK r16b、Go 1.10.3を導入。 zshを使用しているため、`.zshrc` にパスを設定。 Go Mobileのインストールと初期化後、サンプルコード`golang.org/x/mobile/example/basic`を取得し、`go run`で動作確認。 `gomobile build`コマンドでapkファイルを生成し、Dropbox経由でAndroid端末に転送、インストール、実行。 端末の設定で「提供元不明のアプリ」を許可する必要がある。

 

Go言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる3

/** Geminiが自動生成した概要 **/
Go言語でkintoneとチャットワークを連携し、タスク自動登録アプリを作成する過程の3回目。今回はkintoneから取得したデータをチャットワークにタスク登録する処理を実装。kintoneアプリのラベルフィールド値をタスク名として登録するため、`RegisterTaskOnChatWork`関数を追加。この関数でチャットワークAPIを呼び出し、指定のルームにタスクを登録する。コード実行前にkintoneアプリにテストデータを追加し、実行後チャットワークでタスクが登録されていることを確認。データの絞り込みについては省略。

 

Go言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる2

/** Geminiが自動生成した概要 **/
kintoneアプリで設定した日付にチャットワークへタスクを自動登録するアプリ開発の続き。今回はGo言語でkintone REST APIから取得したJSONデータを扱うための構造体を設計し、マッピングを行った。取得データは「レコード番号」「月」「ラベル」「日」等を含み、これをGoの構造体へ変換することでデータ操作を可能にした。具体的には`Field`構造体でフィールドの型と値を、`Record`構造体でレコード群を表現し、`json.NewDecoder`を用いてJSONをデコードした。これにより、ラベル名等の値をプログラムから参照できるようになった。次回は取得値を用いてチャットワークへのタスク登録を行う。

 

電子書籍 第3巻「地質と栽培」発刊しました!

/** Geminiが自動生成した概要 **/
齋藤亮子氏による電子書籍第3巻「地質と栽培」が発刊。夫である齋藤氏が受け取った一通のメールをきっかけに、福井県への旅、そして各地の地質や岩石探訪が始まった。東尋坊の柱状節理、赤土、火山灰、フォッサマグナなど、多様な土地を巡り、土壌と地質の関係を探求する旅の記録をまとめたもの。岩石を知ることは土を知ること、ひいては栽培の土台を知ることになるという気づきから、一見無関係に思える地質や日本の成り立ちまでも探求対象となる。52記事、約267ページの内容には、著者の旅の思い出も深く織り込まれている。栽培への直接的な結びつきは不明瞭ながらも、一見関係ない事を知ることで得られる情報の重要性を説く。

 

Go言語 + kintone + チャットワークでタスクの自動登録アプリを作ってみる1

/** Geminiが自動生成した概要 **/
kintoneとチャットワークを連携し、タスクを自動登録するアプリをGo言語で開発する過程を説明。kintoneにアプリを作成し、Go言語でkintoneのREST APIを使用してデータを取得するコードを紹介。APIキー、ID、パスワードを用いて認証し、JSON形式のデータを取得することに成功。今後の課題として、取得したJSONデータをGo言語で扱うための構造体の作成が挙げられている。

 

PHPでチャットワークAPIを介してタスクを登録してみる

/** Geminiが自動生成した概要 **/
PHPでChatwork APIを使ってタスクを登録する方法を解説。メッセージ投稿APIを元に、エンドポイントを`/rooms/{roomId}/tasks`に変更し、パラメータに`body`(タスク内容)と`to_ids`(担当者アカウントID)を追加する。アカウントIDは、自分のメッセージを引用することで`aid=********`の形式で取得できる。コード例では、cURLでPOSTリクエストを送信し、タスクを登録。実行結果、指定のルームにタスクが追加されることを確認。

 

ミカンの木は砂地を好む?

/** Geminiが自動生成した概要 **/
粘土鉱物は、同型置換という現象により高い保肥力を持ちます。同型置換とは、粘土鉱物の結晶構造中で、あるイオンが別のイオンで置き換わる現象です。例えば、四価のケイ素イオンが三価のアルミニウムイオンに置き換わると、電荷のバランスが崩れ、負電荷が生じます。この負電荷が、正電荷を持つ養分(カリウム、カルシウム、マグネシウムなど)を吸着し、保持する役割を果たします。このため、粘土鉱物を多く含む土壌は保肥力が高く、植物の生育に適しています。花崗岩に含まれる長石も風化によって粘土鉱物へと変化するため、花崗岩質の土壌は保肥力を持つようになります。

 

SOY CMSを介さずにSOY2DAOを使ってみる2

/** Geminiが自動生成した概要 **/
SOY CMSを使わずにSOY2DAOでSQLを実行し、オブジェクトで結果を取得する方法を解説しています。 独自SQLの実行には`executeQuery()`ではなく`executeObjectQuery()`を使用します。`executeObjectQuery()`の第一引数にSQL文、第二引数にDAOクラス名を指定します。戻り値は指定したクラスのオブジェクト、もしくはオブジェクトの配列となります。記事では、`SOY2Sample`クラスと対応するテーブル`soy2_sample`を例に、`id`と`text`を取得するSQLを実行し、結果を`SOY2Sample`オブジェクトの配列として受け取る方法をコード付きで示しています。これにより、データベースから取得したデータをオブジェクトとして扱いやすくなります。

 

SOY CMSを介さずにSOY2DAOを使ってみる1

/** Geminiが自動生成した概要 **/
SOY CMSを使わずにSOY2DAOを単体で利用する方法を紹介。SQLiteのインメモリデータベースを例に、テーブル作成、データ挿入、検索のコードを記述。WEBAPP_DIRの定義、SOY2のinclude、RootDir設定、SOY2DAOConfigによるDSN設定を行い、SOY2DAOでSQLを実行。結果として、挿入したデータが期待通りに取得できることを確認。次回はDAO本来の機能を探る。

 

SOY CMSで記事の見出し自動生成プラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY CMSのブログ機能拡張として、長文記事の見出し自動生成プラグインが開発されました。記事内のH1〜H3タグを解析し、階層構造を持つ目次をHTMLで生成、任意の場所に表示します。出力されるHTMLは、各見出しへのアンカーリンクを含み、見出しにも対応するID属性が付与されるため、スムーズなページ内ナビゲーションが可能です。このプラグインにより、WordPress等のブログ特化CMSに比べて弱かったSOY CMSのブログ機能が強化され、強力なEC機能との連携による販促ブログとしての活用が期待されます。開発者は、SOY CMSをブログとECを統合したプラットフォームとして捉え、今後もブログ機能の改善を進める方針です。関連情報として、SOY Shopとの連携による有料ブログ運営や、下書き自動保存機能の記事へのリンクが提供されています。

 

断層破砕帯を見に花折断層へ

/** Geminiが自動生成した概要 **/
大鹿村の中央構造線安康露頭では、日本列島を東西に分ける巨大な断層である中央構造線が地表に露出している。この露頭では、内帯の領家変成帯と外帯の三波川変成帯が断層を挟んで接しており、両変成帯の違いを肉眼で確認できる貴重な場所となっている。領家変成帯は白っぽい花崗岩質マイロナイト、三波川変成帯は緑色片岩で構成され、その境界は黒色の断層粘土で満たされている。この断層粘土は、断層運動によって岩石が粉砕された証拠である。安康露頭は、異なる地質がどのように接触しているかを理解する上で重要な地質学的サイトである。

 

川に落ちている石を頼りに肥料の鉱山を探す

/** Geminiが自動生成した概要 **/
粘土鉱物を理解するために、筆者はまず「日本の石ころ標本箱」を参考に、仙台の名取川でゼオライトが採れることを知る。ゼオライトは土壌改良効果のある鉱物で、名取川上流に採掘鉱山があると記載されていた。Google Mapsで鉱山の場所を特定し、地質図を確認するも、海成堆積岩か非海成堆積岩か判別できなかった。仙台は元々は海であったことから、隆起した海成堆積岩と推測する。さらに土壌図も確認したが、特筆すべき点は見当たらなかった。これらの調査を通して、遠隔地にある鉱物の地質や土壌を特定することの難しさを実感する。

 

花崗岩が崩れ土になっていく

/** Geminiが自動生成した概要 **/
棚倉西断層近くの山本公園の川で崖崩れを観察し、花崗岩が風化・侵食していく過程について考察した記録。崖崩れ現場は花崗岩質の深成岩地帯で、上流には丸みを帯びた花崗岩の転石が堆積していた。これは、川の流れによって角が取れ、砂や粘土が剥がれて下流に運ばれるため。この過程で石のミネラル分も水に溶け込み、下流の土壌形成に繋がる。つまり、崖崩れや石の丸まりは、土壌の起源を理解する上で重要な現象である。筆者は一年前に土壌の理解を深めるため川の上流を訪れ、今回の観察でその理解が深まったと振り返っている。

 

浅川町付近にある温泉

/** Geminiが自動生成した概要 **/
福島県浅川町付近には、異なる特徴を持つ温泉が存在する。棚倉東断層の北に位置する浅川町は、阿武隈花崗岩と阿武隈変成岩の境界に位置する。近隣には、ラジウム含有量が東北一とされる母畑温泉と、pH9.3の高アルカリ性温泉である狐内温泉がある。母畑温泉は花崗岩の影響と考えられるが、狐内温泉の高いpHは粘土鉱物の影響と推測される。このように多様な温泉が存在するのは、地質的背景の複雑さを反映していると考えられる。

 

小松寅吉の飛び狛犬様と福貴作石

/** Geminiが自動生成した概要 **/
福島県浅川町を訪れ、白河近郊の鹿島神社で小松寅吉作の飛び狛犬を鑑賞。この狛犬には福貴作石という地元で庭石にも使われる石材が用いられている。福貴作石は白っぽく、硬いながらも脆い部分があり加工しやすい。浅川町北部の福貴作地域で採掘され、地質図を見ると阿武隈花崗岩、阿武隈変成岩、蛇紋岩が分布する。福貴作石は有色鉱物の少ない花崗岩で、硬さと脆さを併せ持つため石材に適している。花崗岩の脆さは、長い年月で割れ目が生じやすく、加工に有利となる性質を指す。

 

美味しいコメを求めて福島県の浅川町へ

/** Geminiが自動生成した概要 **/
知人の出身地である福島県浅川町で局所的に美味しい米が収穫できるという話を聞き、地質に着目して現地を訪れた。美味しい米として知られる小滝のコメとの関連性を探るため、浅川町の地質を調べると、水田を囲む小山が超苦鉄質岩類で形成されていることが判明した。超苦鉄質岩類は米に必要な鉄やマグネシウムを豊富に含む一方、カリウムが不足しがちである。しかし、この地域では上流に阿武隈花崗岩が存在し、花崗岩由来のカリウムが川を通じて水田に供給されている可能性がある。つまり、超苦鉄質岩類と花崗岩の組み合わせが、米作りに理想的な土壌環境を作り出していると考えられる。実際に収穫された米の品質については、食べてみないと分からない楽しみとして残されている。

 

棚倉東断層の強アルカリ温泉

/** Geminiが自動生成した概要 **/
棚倉構造線には東西二つの断層があり、西断層の温泉は弱アルカリ性だが、東断層の温泉はpH10程度の強アルカリ性を示す。強アルカリ温泉は粘土鉱物の影響が推測される。東舘付近では二つの断層の間に阿武隈花崗岩帯が入り込み、多数の断層が形成されている。東断層の南側には強アルカリ温泉が分布する。西側の滝の沢温泉は弱アルカリ性、東側の温泉は強アルカリ性という違いは興味深く、断層と温泉の関連性、特に東断層と強アルカリ温泉の関連性が注目される。この地域は大きな破砕帯に侵食作用が働いて形成されたもので、粘土鉱物の存在が強アルカリ温泉の生成に関係している可能性がある。

 

棚倉構造線の棚倉西断層

/** Geminiが自動生成した概要 **/
福島県安達郡日山周辺に分布する阿武隈花崗岩類は、主に黒雲母花崗岩と白雲母花崗岩から構成される。黒雲母花崗岩は粗粒等粒状でカリ長石の斑晶を含む。一方、白雲母花崗岩は中粒~粗粒で、黒雲母花崗岩よりカリ長石の斑晶が少なく、白雲母を多く含む。両者は漸移関係にある。 黒雲母花崗岩には、さらに細粒相、斑状相、巨晶相といった岩相変化が見られる。 また、アプライト、ペグマタイト、花崗閃緑岩などの小規模な岩脈も貫入している。これらの花崗岩類は、白亜紀後期に貫入したと考えられる。

 

川が教えてくれること

/** Geminiが自動生成した概要 **/
客土が定着した地域とそうでない地域を比較することで、土壌の特性や環境要因が土壌流出にどう影響するかを考察した記事です。定着した地域では、粘土質の高い赤土が元々の土壌と混ざり合い、安定した土壌構造を形成していました。一方、定着しなかった地域では、砂質の黒土が客土として用いられましたが、元々の土壌と馴染まず、降雨によって流出してしまいました。 土壌の粒度分布や有機物含有量の違いが、土壌の保水性や透水性に影響を与え、これが土壌流出のしやすさを左右する要因となっていることが示唆されました。 また、植生の有無も土壌流出に大きく関与しており、植物の根が土壌を保持する役割を果たすことで、土壌流出が抑制されることがわかりました。 これらの結果から、持続可能な土地利用のためには、土壌特性や環境要因を考慮した客土選定と植生管理が重要であると結論付けられています。

 

SOY Inquiryでお問い合わせがあった場合にチャットワークに通知したい

/** Geminiが自動生成した概要 **/
SOY Inquiryでお問い合わせがあった際にChatworkに通知する方法を紹介します。まず、フォーム設置ディレクトリ(例:default)にmail.admin.phpを作成します。このファイルに、Chatwork APIトークン、ルームID、お問い合わせ内容をPOSTするcURLコードを記述します。 APIトークンとルームIDは別途取得が必要です。コード内の`$mailBody[0]`にはお問い合わせ本文が入っています。 設置完了後、テスト送信すると、指定のChatworkルームに「【saitodev.co】お問合わせがありました。」に続いてお問い合わせ内容が通知されます。

 

森の恵みの行き着く先

/** Geminiが自動生成した概要 **/
植物は生育に銅を必要とし、欠乏すると様々な生理障害が現れる。銅は多くの酵素の構成要素であり、特にリグニン生合成に関わるラッカーゼ、光合成に関わるプラストシアニンで重要な役割を果たす。ラッカーゼはリグニンの重合反応を触媒し、植物の強度や抵抗性を高める。プラストシアニンは電子伝達系で機能し、光合成効率に影響する。銅はまた、エチレン受容体、抗酸化酵素などにも関与し、植物の成長、ストレス耐性、病害抵抗性に関わる。銅は土壌中に存在するが、吸収されにくい形態も存在する。植物は銅の吸収、輸送、貯蔵を巧みに制御し、生育に最適な銅濃度を維持している。銅の過剰供給は毒性を示すため、そのバランスが重要である。

 

Go言語で特定のサイトの複数の画像を取得する

/** Geminiが自動生成した概要 **/
Go言語で特定サイトから複数画像を取得する処理を解説しています。まず、対象ページのHTMLを取得し、正規表現を用いて`img`タグの`src`属性から画像パスを抽出します。抽出したパスは`/site/files`を含むものだけをスライスに格納します。次に、スライス内の各パスに対して、サイトのドメインを付加して完全なURLを生成し、`http.Get`で画像データを取得します。取得したデータは`ioutil.ReadAll`でバイト型に変換後、ファイル名を取得するためにパスの最後の`/`以降の文字列をファイル名として新規ファイルを作成し、画像データを書き込み保存します。

 

比叡山の山頂付近にあった大きな岩

/** Geminiが自動生成した概要 **/
比叡山山頂付近には大きな岩が配置されているが、これは庭園用に持ち込まれたものではなく、元からあったホルンフェルスと考えられる。ホルンフェルスはマグマの熱で変成した堆積岩で、風化しにくい性質を持つ。比叡山と大文字山は、風化しやすい花崗岩部分が削られ、ホルンフェルス部分が残り形成された。つまり、ホルンフェルスは土壌の主要構成要素にはなりにくく、地形形成に影響を与える。比叡山の地質図を見ると、山頂付近は花崗岩と堆積岩(付加体)が分布しており、周辺にはチャートが多い堆積岩も存在する。これらの岩質の違いが、比叡山の地形を形成する要因となっている。

 

複合機とGoogleドライブを連携して、出先でFAXの内容を確認する

/** Geminiが自動生成した概要 **/
複合機のFAX受信をGoogleドライブと連携し、ChatWorkで通知する仕組みを紹介。複合機がFAXをPDFでGoogleドライブに共有する機能を活用し、Google Apps ScriptでPDFを特定フォルダに移動、ファイル名と共にChatWorkへ通知する。これにより、外出先でもFAX内容を即時確認でき、紙の無駄や転送の手間を省ける。5分間隔でスクリプトを実行することで、ほぼリアルタイムな通知を実現。設定には、複合機側のGoogleドライブ連携と、スクリプト内のChatWork API設定が必要。

 

比叡山山頂から大文字山を見る

/** Geminiが自動生成した概要 **/
ブラタモリ京都・東山編で比叡山と大文字山の成り立ちを知り、比叡山山頂のガーデンミュージアム比叡の展望台から大文字山を眺めた。両山は9000万年前のマグマ活動で形成された花崗岩とホルンフェルスから成る。大文字山を望むことで花崗岩の巨大さを体感し、山の風化による変化を想像しやすくなった。比叡山山頂からの景色は、地質学的スケールの大きさを感じさせる貴重な体験となった。

 

Go言語でWebサイトから画像のデータを取得

/** Geminiが自動生成した概要 **/
Go言語でWebサイトから画像を取得し、ローカルに保存する方法を解説しています。`http.Get`で指定URLの画像データを取得し、`ioutil.ReadAll`でレスポンスボディをバイトスライスとして読み込みます。`os.Create`で新規ファイルを作成し、`file.Write`で取得したバイトデータを書き込むことで、画像ファイルを保存します。サンプルコードでは"植物のミカタ"の画像URLを使用し、"sample.jpg"として保存しています。記事では、HTTP GETリクエストとファイル作成の基本についても触れており、関連する記事へのリンクも提供しています。

 

Go言語でファイル作成

/** Geminiが自動生成した概要 **/
Go言語でファイルを作成する方法を解説しています。まず、`os.Stat`でファイルの存在確認を行い、存在しなければ`os.Create`で作成、存在すれば`os.Open`で開きます。`defer file.Close()`で確実にファイルを閉じ、`[]byte`に変換した文字列を`file.Write`で書き込みます。 次に、`os.Stat`でディレクトリの存在確認を行い、なければ`os.Mkdir`で作成します。`filepath.Abs(".")`で現在のディレクトリを取得し、`os.Chdir`で作成したディレクトリに移動してから、上記と同様にファイルを作成・書き込みます。結果として、指定したディレクトリにファイルが作成されます。

 

Go言語で構造体のメソッド

/** Geminiが自動生成した概要 **/
Go言語のメソッドは、特定の型に紐づく関数です。`sample.go`で`Person`構造体を定義し、`Greet()`メソッドを実装します。`Greet()`メソッドは`Person`型のポインタ`*Person`をレシーバーとして受け取ります。`main.go`で`Person`型の変数`ryoko`を作成し、`ryoko.Greet()`と呼び出すことでメソッドを実行します。メソッド内では、レシーバー`p`を通して`Person`のフィールド(例:`p.Name`)にアクセスできます。初期実装では「こんにちは」と表示されますが、`fmt.Println(p.Name + "さん、こんにちは")`と変更することで「りょうこさん、こんにちは」と表示できます。

 

Go言語で構造体

/** Geminiが自動生成した概要 **/
Go言語では、`type`キーワードで構造体(`struct`)を定義できる。構造体は複数の型の値をまとめたもので、例えば`Person`構造体に`id`、`name`、`reading`フィールドを持つ。`main`関数で`Person`型の変数`ryoko`を宣言し、値を代入して出力できる。構造体のフィールドへは`.`でアクセスする。また、構造体はパッケージに含めることができ、`sample`パッケージに`Person`構造体を定義し、`main`関数で`import`して`sample.Person`として利用できる。パッケージ内の構造体を利用する場合、フィールド名の最初の文字は大文字にする必要がある。

 

米は炊飯時に糊化される

/** Geminiが自動生成した概要 **/
米の美味しさは、デンプンの量よりデンプン分解酵素アミラーゼの効率性に依存する。アミラーゼはタンパク質と補酵素(カルシウムイオン)から成るが、カルシウムは土壌に豊富なので、米の美味しさへの直接的影響は少ないと考えられる。 米は炊飯時に糊化(アルファ化)し、デンプンの水素結合が切れ、酵素が分解しやすくなる。 糊化が進むほど、唾液中の酵素で糖に分解されやすくなり、甘みが増す。 記事では、米の美味しさの鍵となるアミラーゼの効率性、関連する酵素、タンパク質、アミノ酸、補酵素について解説し、糊化に関する論文を紹介している。

 

チャットワークとGoogle Apps Scriptで音声入力で投稿してみる

/** Geminiが自動生成した概要 **/
Googleドキュメントの音声入力とGoogle Apps Scriptを連携させ、チャットワークへの投稿を音声で行う方法を紹介。 「チャットワーク(投稿内容)終了」と話しかけると、内容がチャットワークに送信されるスクリプトを作成。1分毎にスクリプトが実行され、ドキュメントの内容をチェック、投稿後ドキュメントはクリアされる。APIトークン、ルームIDの設定が必要。音声入力はドキュメントのツールから利用可能。Androidスマホでは音声入力の設定を事前に確認する必要がある。この方法で、両手が塞がっている状況でもチャットワークに投稿可能。実用時はタスク登録ルールやToの指定が推奨される。

 

Go言語でHTTPのPOST

/** Geminiが自動生成した概要 **/
Go言語でChatWork APIを用いてマイチャットにメッセージをPOSTする手順を紹介。 `http.NewRequest`でPOSTリクエストを作成し、ChatWork APIトークンをヘッダーに設定、`http.DefaultClient.Do`でリクエストを送信する。記事では"GOからのテスト投稿"というメッセージを送り、レスポンスコード200を確認することで成功を確認している。 また、ChatWork APIのルームID、トークンの取得方法については別記事を参照している。

 

Google Apps Scriptからチャットワークに投稿してみる

/** Geminiが自動生成した概要 **/
Google Apps Script (GAS)を使ってChatWorkに投稿する方法を紹介。ChatWorkClient for Google Apps Scriptライブラリを利用し、APIトークンとルームIDを指定することで簡単にメッセージを送信できる。GASのトリガー機能と組み合わせれば、Gmail受信やGoogleカレンダーの予定に基づいて自動投稿するなど、業務効率化に役立つアプリを簡単に作成可能。ChatWorkとG Suiteの連携で業務改善を実現できる。

 

Go言語でHTTPのGET

/** Geminiが自動生成した概要 **/
Go言語でHTTP GETリクエストを実行する方法を解説しています。`net/http`パッケージの`Get`関数で指定URLにアクセスし、レスポンスを取得します。`ioutil.ReadAll`でレスポンスボディを読み込み、`string`型に変換してHTML内容を表示します。エラー処理も実装し、最後に`response.Body.Close()`でクローズします。記事では、各段階の出力を示しながら、最終的にHTMLを取得するコードを完成させています。

 

PHPでチャットワークAPIを介してメッセージを投稿してみる

/** Geminiが自動生成した概要 **/
ChatWork APIを使用してPHPからマイチャットに投稿するスクリプトを作成。投稿は成功し、マイチャットに「PHPからテスト投稿」のメッセージが送信された。 また、ChatWorkでは電話代行サービスを開始しており、電話対応を減らす取り組みが進んでいる。仕事における電話が嫌煙される傾向が高まっている。

 

SOY Shop内でパイプハウスの施工管理アプリを開発しました

/** Geminiが自動生成した概要 **/
SOY Shopの在庫管理機能と管理画面からの注文登録機能を拡張し、パイプハウスの見積書作成アプリを開発。従来のエクセル管理では、膨大な部品の仕入れ値確認に時間と手間がかかっていたが、新アプリでは商品登録時に仕入れ値を記録することで、次回以降の見積書作成時の再確認作業を大幅に削減。商品名検索によるカート追加や、検索結果にない場合の即時商品登録機能も実装。さらに、見積書の商品一覧の並び替え機能、注文内容の自動バックアップ機能も追加することで、作業効率と正確性を向上。これらの機能はパイプハウス以外にも応用可能で、既存のネットショップ運営における経費削減にも貢献する。開発したパッケージは専用サイトからダウンロード可能。

 

続・Ideapad 720SにUbuntuを入れてWi-Fiを使用する

/** Geminiが自動生成した概要 **/
modprobeコマンドはLinuxカーネルモジュールを管理する。カーネルモジュールは、デバイスドライバやファイルシステムなど、カーネルの機能を拡張するコンポーネント。modprobeを用いて、これらのモジュールを動的にロードまたはアンロードできる。これは、システムリソースを効率的に使用し、必要に応じて機能を追加/削除する柔軟性を提供する。 ArchWikiのカーネルモジュールページでは、モジュールの種類、ロード方法、設定ファイル、トラブルシューティングなど、詳細な情報が提供されている。

 

Ideapad 720SにUbuntuを入れてWi-Fiを使用する

/** Geminiが自動生成した概要 **/
Lenovo Ideapad 720SにUbuntu 18.04β版をインストールしたが、内蔵Wi-Fiアダプタは使用できなかった。Wi-Fiアダプタ自体はRealtek製で物理的には動作しているものの、対応するドライバが見つからない。ArchWikiやRealtek、Githubのリポジトリを調査した結果、rtl8821ceドライバが必要だとわかったが、Ubuntuに導入できる形では提供されていない。そのため、現時点ではUSB接続のPocketWifiを利用してインターネットに接続している。

 

京都府の石、桜石

/** Geminiが自動生成した概要 **/
京都府亀岡市にある桜石は、菫青石の仮晶で、都道府県の石に指定されている。泥質岩にマグマが貫入し、熱変成作用を受けてホルンフェルス化した際に再結晶した鉱物である。六角短柱状で、容易に割れる断面には花弁状の模様が現れることから「桜石」と呼ばれる。産地の積善寺・桜天満宮付近は付加体であり、周辺の山地には花崗岩が分布する。桜石の形成はマグマの熱変成作用と関連し、近隣に存在するラドン温泉の熱源も深成岩中の放射性鉱物の崩壊熱と推測される。

 

地衣類という菌たちの巧みな生き方

/** Geminiが自動生成した概要 **/
地衣類は、光合成を行うシアノバクテリアまたは緑藻と共生している菌類です。地衣類は、菌が光合成生物に必要な栄養を提供し、光合成生物が合成した産物を菌に返します。この共生関係により、地衣類は木の幹などの栄養分に乏しい環境でも生存できます。 地衣類の光合成にはマンガンが必要ですが、地衣類は宿主からマンガンを吸収していると考えられます。これは、死んだ幹に残った微量元素を活用している可能性を示唆しています。つまり、地衣類は木の残りを再利用することで、山の生態系における栄養循環に貢献している可能性があります。

 

SOY2HTMLでリンクを出力する - HTMLLink編

/** Geminiが自動生成した概要 **/
SOY2HTMLのHTMLLinkクラスは、PHPでリンクを生成するためのクラスです。`text`属性でリンクテキストを、`link`属性でhref値を設定します。`SOY2PageController::createLink()`を使うと、管理画面のURLを簡単に生成できます。HTMLには`<a soy:id="detail_link"></a>`と記述します。HTMLActionLinkクラスはHTMLLinkを継承し、URLにトークンを付与することでセキュリティを強化します。`soy2_check_token`と併用し、URL直打ちを防止します。

 

SOY2HTMLでセレクトボックスを設置する - HTMLSelect編

/** Geminiが自動生成した概要 **/
SOY2HTMLのHTMLSelectクラスは、HTMLのセレクトボックスを生成する。`$this->addSelect()`で利用し、オプションは第二引数の配列で指定する。 `options`キーに配列を渡すとoptionタグが生成され、連想配列でない場合はvalue属性が設定されない。`indexOrder`をtrueにすると、数値インデックスがvalue属性となる。`selected`キーで選択状態を指定、複数選択には配列で渡す。多重配列でoptgroupも作成可能。`each`キーで各optionタグに属性を追加できる。

 

プラグイン毎に詳細画面を持たせる拡張ポイントsoyshop.config.php

/** Geminiが自動生成した概要 **/
SOY Shopプラグインの拡張ポイントsoyshop.config.phpは、プラグイン毎に詳細設定画面を作成するための機能です。プラグインディレクトリにsoyshop.config.phpを設置し、インターフェース`SOYShopConfigPageBase`を実装することで、`http://ドメイン/CMSインストールディレクトリ/soyshop/index.php/Config/Detail?plugin=プラグインID` でアクセス可能な設定ページが生成されます。 主要なメソッドは`getConfigPage()`(設定画面のHTMLを出力)、`getConfigPageTitle()`(設定画面のタイトル)、`redirect()`(リダイレクト)です。`getConfigPage()`では、SOY2HTMLを用いてHTMLを生成するのが一般的です。PAY.JPクレジットカード支払いモジュールでは、`PayJpConfigPage`クラスとテンプレートファイルを使用して設定画面を構築しています。`redirect()`メソッドは、設定更新後などにURLパラメータを追加してリダイレクトする際に使用します。

 

SOY2HTMLで処理とデザインを切り分ける

/** Geminiが自動生成した概要 **/
SOY CMS/Shopのモジュール内でSQLを実行するには、SOY2DAOを利用します。データベースへの接続情報はSOYShop_DataSetsクラスで管理されており、`getDataSourceName()`でデータソース名、`getDatabaseUserName()`でユーザー名、`getDatabasePassword()`でパスワードを取得できます。データベースに接続するには、`SOY2DAOFactory::create("データソース名")`を使用します。createメソッドの引数は省略可能で、省略した場合はshopデータベースに接続します。SQLを実行するには、`query()`、`executeQuery()`、`execute()`メソッドを使用します。これらのメソッドは、`SOY2DAO`クラスのインスタンスメソッドとして呼び出します。

 

開聞岳付近の未熟黒ボク土

/** Geminiが自動生成した概要 **/
鹿児島県開聞岳付近の畑は、小石が多くトラクターの摩耗が激しい。土壌は未熟黒ボク土または未熟土に分類され、20万分の1日本シームレス地質図によると、火砕流堆積物で形成されている。開聞岳周辺は特に小石が多く、離れるにつれて小石が減るため、火砕流が周辺に堆積し、火山灰が風に運ばれて広がったと推測される。土壌情報は日本土壌インベントリーで確認でき、関連する火山灰や黒ボク土の記事へのリンクも掲載されている。

 

イチゴの果実形成で蓄積するアントシアニン

/** Geminiが自動生成した概要 **/
シアン化合物は青酸配糖体として多くの植物に含まれ、害虫からの防御機構として機能する。摂取すると青酸ガスが発生し、呼吸を阻害するため危険である。しかし、植物自身はシステインを含むβ-シアノアラニン合成酵素を用いて青酸を無毒化できる。この酵素は青酸とシステインを反応させ、β-シアノアラニンに変換する。さらに、β-シアノアラニンはアスパラギン酸と反応し、アスパラギンと無毒な物質を生成する。このメカニズムにより、植物は自身の青酸配糖体から身を守り、窒素源としても利用している。

 

イチゴの果実の着色を担う物質は何か?

/** Geminiが自動生成した概要 **/
イチゴの鮮やかな紅色はアントシアニンによるもので、品種に関わらず、シアニジン-3-モノグルコシド、ペラルゴニジン-3-モノガラクトシド、ペラルゴニジン-3-モノグルコシド、シアニジン、ペラルゴニジンの5種類が確認されている。これらのアントシアニンは、フェニルアラニンとマロニルCo-Aから合成される。フェニルアラニンは植物の防御機構にも関与するアミノ酸である。アントシアニンは抗酸化物質としての働きも知られている。

 

日本三景松島

/** Geminiが自動生成した概要 **/
宮城県の松島は、日本三景の一つであり、典型的なリアス式海岸の地形です。多くの小島は、凝灰岩、砂岩、礫岩などの侵食されやすい堆積岩で形成されています。これらの地層が隆起した後、地震による沈降で溺れ谷に海水が入り込み、現在の多島海が形成されました。松島湾の水深が浅いのは、地震による地盤沈降の繰り返しが原因です。他のリアス式海岸も同様に、地殻変動と侵食作用によって形成されたと考えられます。

 

SOY CMSのカテゴリー詳細表示プラグインでWYSIWYGエディタに対応しました

/** Geminiが自動生成した概要 **/
SOY CMSのカテゴリー詳細表示プラグインがアップデートされ、WYSIWYGエディタ(TinyMCE)に対応しました。ユーザーからの要望に応え、ラベルの詳細編集画面でHTMLタグだけでなく、画像や動画も手軽に挿入できるようになりました。プラグインの詳細設定でWYSIWYGエディタの使用をチェックすることで有効化できます。このアップデートにより、よりリッチなコンテンツをカテゴリー詳細に表示することが可能になります。最新のパッケージはsaitodev.co/soycms/からダウンロードできます。

 

南あわじの白っぽい粘土質の水田

/** Geminiが自動生成した概要 **/
兵庫県南あわじ市の水田土壌を観察した。白っぽい粘土質で、土壌図では低地水田土に分類される。地質図によれば、この地域は堆積物地形であり、領家変成帯に位置する。北側には花崗岩が広がり、この水田土壌は花崗岩形成時の熱影響を受けた付加体由来と考えられる。現状の知識では地質図からの詳細な土壌特性の推定は難しいが、水田ながら比較的排水性が高い環境と推測される。

 

従来の温泉の理論では説明できなかった有馬温泉

/** Geminiが自動生成した概要 **/
温泉の成分が植物の生育に影響を与える可能性に着目し、温泉の成因を探る筆者は、従来の火山性・非火山性(深層地下水型)の温泉理論では、有馬温泉のような高塩濃度温泉を説明できないことに言及する。 地熱による地下鉱物の溶解や放射性鉱物の崩壊熱など、温泉の熱源と成分の関係に触れつつ、飛騨小坂の炭酸冷泉や良質な米との関連性を考察する。そして、既存の理論では説明がつかない有馬温泉の成因解明に、プレートテクトニクス理論の登場が大きな役割を果たすことを示唆し、更なる探求へと繋げる。

 

有馬温泉の湯には何が溶けているか?

/** Geminiが自動生成した概要 **/
鳥取砂丘の砂は、大部分が石英と長石で構成されており、これは花崗岩の主要構成鉱物と同じです。著者は砂丘で砂を採取し、実体顕微鏡で観察することで、砂粒の形状や色から鉱物種を推定しました。砂粒は全体的に白っぽく、透明感のあるものやピンクがかったものが見られました。透明感のあるものは石英、ピンクがかったものはカリ長石と推定されました。また、砂鉄の存在も確認されました。これらの観察結果から、鳥取砂丘の砂は、中国山地の花崗岩が風化・侵食され、千代川によって運ばれてきたものと推測されます。砂丘で採取した砂は、顕微鏡観察だけでなく、今後、X線回折などで本格的に分析する予定です。

 

植物由来のケイ酸塩鉱物、プラント・オパール

/** Geminiが自動生成した概要 **/
イネ科植物は土壌から吸収したシリカを体内に蓄積し、強度を高める。枯死後、このシリカはプラント・オパールというケイ酸塩鉱物として土壌中に残る。プラント・オパールは土壌の団粒構造形成に重要な役割を果たすと考えられている。特にソルゴーは緑肥として有効で、強靭な根で土壌を破砕し、アルミニウム耐性により根から有機酸を分泌してアルミニウムを無害化する。枯死後はプラント・オパールとなり、活性化したアルミニウムを包み込み、団粒構造形成を促進する可能性がある。

 

植物はどのようにしてシリカを吸収するか?

/** Geminiが自動生成した概要 **/
植物は土壌中からケイ酸を吸収し、強度を高める。吸収の形態はSi(OH)4で、これはオルトケイ酸(H4SiO4)が溶解した形である。オルトケイ酸はかんらん石などの鉱物に含まれ、苦鉄質地質の地域ではイネの倒伏が少ない事例と関連付けられる。一方、二酸化ケイ素(シリカ)の溶解による吸収は限定的と考えられる。ケイ酸塩からの吸収は、酸による反応が推測されるが、詳細は不明。可溶性ケイ酸はアルミニウム障害も軽減する効果を持つ。つまり、イネのケイ酸吸収は、土壌中の鉱物組成、特にかんらん石の存在と関連し、可溶性ケイ酸の形で吸収されることで、植物の強度向上に寄与する。

 

ホルモンのように作用するペプチド、システミン

/** Geminiが自動生成した概要 **/
植物の免疫機構において、ペプチドの一種であるシステミンがホルモン様の役割を果たす。傷害を受けた植物はシステミンを合成し、他の器官へ輸送する。システミンを受容した細胞は防御ホルモンであるジャスモン酸を合成し、殺傷菌に対する防御応答を開始する。これは、生きた細胞に寄生する菌に対するサリチル酸とは異なる機構である。システミンや防御タンパク質の合成にはアミノ酸が利用され、ジャスモン酸合成にもアミノ酸から作られる酵素が関与するため、植物の免疫においてアミノ酸は重要な役割を担っていると言える。

 

Google Apps ScriptでJPEGの画像からOCRで画像内の文字列を取得してみた

/** Geminiが自動生成した概要 **/
Google Apps ScriptでJPEG画像からOCRで文字列を取得する方法を検証。GoogleドキュメントでのOCRをGASで自動化する方法を紹介している。 Drive APIを有効化し、画像URLを指定して`Drive.Files.insert`メソッドでGoogleドライブに挿入、`ocr:true`オプションでOCRを実行。 生成されたGoogleドキュメントには画像とOCR結果のテキストが含まれる。日付や画像中の文字認識は難しいが、本文は高精度で取得できた。以前試したGoogleドキュメント直接OCRより精度は高い。

 

Google Apps ScriptのHTML Serviceで自作した関数の結果を出力してみる

/** Geminiが自動生成した概要 **/
社会人・学生向けプログラミング教室で、Googleスプレッドシートの拡張機能開発をテーマにした勉強会が開催されました。内容はスプレッドシート操作の自動化をGASを用いて行うもので、参加者は「Google Apps Script完全入門」を教材に学習しました。勉強会では、GASの基本的な使い方、HTML Serviceを用いたWebアプリ作成、スプレッドシート操作、API連携、トリガー設定などを実践的に学びました。参加者からはGASの利便性や可能性を実感する声が上がり、業務効率化やデータ分析への応用について関心を示していました。

 

Google Apps ScriptのHTML Serviceを試してみた

/** Geminiが自動生成した概要 **/
Google Apps Script (GAS) のHTML Serviceを利用して、HTMLファイルとGASのコードを連携させる方法を紹介しています。 具体的な手順として、Googleドライブ上にGASプロジェクトを作成し、index.htmlファイルに"Hello, World!"と記述、コード.gsファイルにはdoGet関数でHTMLファイルを読み込むコードを記述します。 その後、ウェブアプリケーションとして公開することで、ブラウザでHTMLの内容が表示されることを確認しています。 さらに、GASを学ぶ上でJavaScriptの知識が重要であることを補足し、関連技術としてNode.js、NW.js、GoogleドキュメントのOCR機能についても言及しています。

 

Node.js、Socket.IOとLet's Encryptでチャットアプリの常時SSL化

/** Geminiが自動生成した概要 **/
記事では、インターネット上のパケットを傍受して中身を確認する方法を解説しています。使用ツールはWiresharkで、無線LANに接続するPCと、傍受対象のスマホを同じネットワークに接続します。スマホと通信するパケットはPCも受信するため、Wiresharkでフィルタリングしてスマホの通信のみを抽出します。HTTP通信の場合は、パスワードなどの重要な情報が平文で送信されていることが確認できます。HTTPS通信の場合は暗号化されているため、傍受しても内容は解読できません。この実験を通して、HTTP通信の危険性とHTTPS通信の重要性を示しています。

 

植物はいつプロリンを合成するのか?

/** Geminiが自動生成した概要 **/
植物は乾燥や高塩ストレスといった水ストレスに晒されると、細胞内にプロリンを蓄積する。プロリンは適合溶質として働き、浸透圧を調整することで細胞内の水分を保持する役割を果たす。これは、高塩ストレス時に細胞外への水分の移動を防ぐのに役立つ。このメカニズムは、水ストレスに晒されやすい植物にとって重要な生存戦略と言える。一方、過剰な施肥による高塩ストレス状態は、栽培においても見られる問題であることが示唆されている。

 

さくらVPS上でSeleniumとphp-webdriverを利用する

/** Geminiが自動生成した概要 **/
さくらVPS(Ubuntu 16.04)にSeleniumとphp-webdriverによるUIテスト環境を構築する方法。Selenium実行には仮想デスクトップ(Xvfb)とChromiumが必要で、手順はApache/PHP設定、Java8、Selenium、Xvfb、Chromium、ChromeDriverインストール、そしてSelenium起動スクリプト(load.sh)作成。load.shはXvfbとSeleniumを同時に起動し、ブラウザは仮想デスクトップ上で動作する。動作確認は http://(VPSのIPアドレス):4444 で行う。Jenkinsの設定とload.shの自動起動設定は今後の課題。

 

php-webdriverでtarget="_blank"付きのアンカータグ対策

/** Geminiが自動生成した概要 **/
php-webdriverで`target="_blank"`のリンクをクリックした際、新しいタブにフォーカスを移すには`$driver->switchTo()->window(end($driver->getWindowHandles()));`ではなく、`$wins = $driver->getWindowHandles(); $driver->switchTo()->window(end($wins));`のように書く。 また、テスト終了時に単に`close()`を使うとセッションが残ってしまうため、タブが一つの場合は`quit()`を使う必要がある。これを考慮した`close()`関数を定義することで、複数タブでも単一タブでも適切にブラウザを閉じ、テストを終了できる。

 

Seleniumとphp-webdriverでUIテストの自動化

/** Geminiが自動生成した概要 **/
Ubuntu 19.10のSnap版Chromiumでは、Seleniumのテスト自動化が実行できない場合があります。これは、Snapのセキュリティ制限により、SeleniumがChromiumを直接操作できないことが原因です。解決策は、ChromiumをSnap版ではなく、aptでインストールしたバージョンを使用することです。まず、`snap remove chromium`でSnap版を削除し、`sudo apt install chromium-browser`でapt版をインストールします。さらに、ChromeドライバーのバージョンとChromiumのバージョンが互換性があることを確認してください。これらの手順により、SeleniumはChromiumを正常に操作できるようになり、テスト自動化が実行可能になります。

 

飛騨小坂の炭酸冷泉

/** Geminiが自動生成した概要 **/
飛騨小坂の炭酸冷泉は、御嶽山の噴火による溶岩流でできた場所に湧き、高い炭酸含有量を誇る飲用可能な鉱泉です。サイダーのような発泡と、鉄由来の独特の血のような味が特徴で、慢性消化器病などに効能があります。成分は含鉄(Ⅱ)-ナトリウム-炭酸水素塩、塩化物冷鉱泉。火山由来の二酸化炭素と重炭酸塩を多く含み、重曹の成分も含まれています。湧水には鉄が多く含まれ、空気に触れて酸化し、周辺は赤い川となっています。

 

飛騨小坂の霊泉覚明水

/** Geminiが自動生成した概要 **/
飛騨小坂の巌立峡近くにある湧水「霊泉覚明水」についての記事です。御嶽登山道を開いた覚明行者が発見したとされるこの水は、断層付近から湧き出ており、マグネシウムと思われる苦味があります。筆者は湧水を飲み、その苦味を体感しました。湧水と行者の関係性、地質的な背景、水質について考察しており、以前訪れた洞川温泉や城ヶ島での経験を踏まえ、学ぶべきことの多さを実感しています。

 

SOY Shopで全ての子商品の在庫数を確認する

/** Geminiが自動生成した概要 **/
SOY Shopで商品規格プラグインを利用している場合、全子商品の在庫数を簡単に確認する方法として、在庫管理プラグイン(または在庫数一括設定プラグイン)の活用が推奨されています。商品規格プラグインは子商品を利用するため、CSVエクスポートでの確認が煩雑になるためです。在庫管理プラグインでは、検索条件を指定して商品一覧を表示、在庫数の一括変更が可能ですが、今回、親商品を非表示にする機能が追加されました。具体的には、「表示件数:100件」、「公開状態:公開のみ」、「子商品の表示:通常商品以外」を設定することで、各規格ごとの子商品の在庫数のみが表示されるようになります。アップデート版はサイト(/soycms/soyshop/)からダウンロード可能です。

 

5万年もの間、川は巌立を削り続けた

/** Geminiが自動生成した概要 **/
ブルカノ式火山の火山灰は、農業利用において課題も多いが、土壌改良資材としての潜在能力も秘めている。火山灰土壌は、リン酸固定能が高く、植物のリン酸吸収を阻害する。しかし、リン酸を吸収しやすい植物種を選定したり、土壌改良材としてリン鉱石を活用することで、リン酸欠乏の問題を克服できる可能性がある。さらに、火山灰土壌は水はけが良い反面、保水性が低い。そこで、有機物や粘土鉱物を添加することで、保水性を高める対策が有効と考えられる。

 

飛騨小坂の巌立峡

/** Geminiが自動生成した概要 **/
飛騨小坂ジオパークは、日本最長の御嶽山溶岩流を主軸とした大地の公園です。30万年前の噴火で流れ出した溶岩は、幅4km、長さ17kmに渡り、現在の地形を形成しました。ジオパークでは、この溶岩流が生み出した奇岩や滝、豊かな自然を体感できます。 特に、溶岩流末端の巌立峡は、高さ50mの柱状節理が屏風のようにそびえ立ち、圧倒的な景観を誇ります。他にも、溶岩洞窟や甌穴群など、溶岩が生み出した様々な地形が存在します。飛騨小坂は、地球のダイナミズムを間近で感じ、学ぶことができる場所です。

 

客土が定着した地域、しなかった地域

/** Geminiが自動生成した概要 **/
関西で客土が一般的でない理由を、土壌の観点から考察しています。関東では土質改善目的で客土が盛んですが、関西、特に京都では客土の認知度が低い。京都周辺の山は、チャートや付加体が多く、玄武岩質や真砂土の起源となる地質が少ない。そのため、客土を試みても効果が薄く、定着しなかったと推測。一方、客土が盛んな地域は、山の地質が土壌改善に適した組成であるか、畑地の土壌が元来劣悪で客土の必要性が高かったと考えられる。川砂による客土はミネラル供給に有効なため、一部で行われている。

 

枕状溶岩と出会いに高槻の本山寺へ2

/** Geminiが自動生成した概要 **/
高槻の本山寺周辺で枕状溶岩を含む緑色岩の露頭を観察した。南側の砂岩頁岩互層から北上し、断層と思われる境を越えると緑色の露頭が現れた。風化部分は赤や黒色が混じり、黒ボク土のような黒い土も確認できた。地質図によれば、この地域は1億6000万年前の付加体で、緑色岩は玄武岩質。枕状溶岩であることから海底火山由来と考えられ、黒ボク土の元となった火山活動は3億年前ほど前と推定される。古代の火山活動が生んだ土壌が現代の農業に利用されていることを実感した。

 

再び高槻の摂津峡に目を向けてみると

/** Geminiが自動生成した概要 **/
高槻の摂津峡の成り立ちについて考察している。渓谷は川の侵食や地殻変動で形成される。摂津峡の地質は複雑な付加体で、明確な成因は特定できないが、隆起と川の侵食が関わっていると考えられる。隆起時の傾斜が川の流れを決定し、その後の侵食で谷が深くなったと推測されるが、詳細は不明。川や渓谷の形成過程は複雑で解明が難しいことを示唆している。

 

再び七宗町の飛水峡へ目を向けてみると

/** Geminiが自動生成した概要 **/
長野の天龍峡は花崗岩を天竜川が削ってできた渓谷だが、岐阜の飛水峡は様子が異なる。飛水峡は日本最古の石が発見された場所で、美しいチャートで知られる。しかし、地質図を見ると、飛騨川は天龍峡のように単一地質を削ったのではなく、付加体という様々な岩石の集合体を流れている。チャートは硬いが、飛騨川が特別硬い岩を削って飛水峡を作ったわけではないようだ。つまり、飛水峡の形成は天龍峡とは異なるメカニズムによる可能性があり、更なる調査が必要である。

 

天龍峡の岸壁は花崗岩

/** Geminiが自動生成した概要 **/
天竜峡の岸壁は花崗岩で形成されています。記事では、天竜峡の始まり、中間、そして俯瞰図を用いて、地質図と照らし合わせながらその地形を解説しています。 峡谷の始まりは堆積岩ですが、中心部は両岸が細いピンク色の花崗岩地帯となっています。俯瞰図を見ると、天竜川が花崗岩を割るように流れている様子が確認できます。川が花崗岩を削って渓谷を形成したのか、地割れに川が流れ込んだのかは不明ですが、天竜峡は花崗岩の割れ目を流れる川であることは確かです。また、関連する「記憶の中では真砂土は白かった」という記事へのリンクも掲載されています。

 

愛知県の渥美半島での栽培

/** Geminiが自動生成した概要 **/
愛知県渥美半島は、秩父帯由来のチャートや石灰岩を含む土壌で、赤黄色土の粘土質やグライ土が多く、排水保水性が悪いなど栽培に難しい土地である。しかし、日照時間の長さと豊富な水資源という好条件の中、土壌の不利を克服するため土耕栽培で試行錯誤を重ね、高度な追肥技術を培ってきた。この経験と観察眼は施設栽培にも継承され、溶液肥培管理技術の向上にも繋がっている。つまり、恵まれない土壌条件が、逆に高度な栽培技術発展の原動力となったと言える。

 

表層無機質中間泥炭土の周辺にあった石

/** Geminiが自動生成した概要 **/
宮城県涌谷町の畑で見つかった石の表面に付着した土を観察し、土壌の成り立ちを考察している。排水工事で掘り出された石の表面には、薄く剥がれた層と赤茶色の層が見られた。剥がれた層は畑の土壌と似ており、赤茶色の層はピートモス(脱水した泥炭)を想起させ、土壌インベントリーの情報を参照すると、この地域は表層が無機質、中間層が泥炭であることがわかる。石の表面の層が無機質の表層、赤茶色の層が泥炭の中間層だと推測し、泥炭層は圧縮されている可能性を示唆している。涌谷町の土壌は、石の表面に表層と中間層が堆積した様子から、その成り立ちを窺うことができる。

 

山からの恵みを畑地へ

/** Geminiが自動生成した概要 **/
長野県栄村小滝集落では、火山灰土壌の弱点を克服するため、近隣の山の土壌を客土として利用している。小滝では、水はけの良い火山灰土壌に保水性のある土壌を混ぜることで、水稲栽培に適した土壌を作り出している。 今回紹介された事例でも同様に、グライ土壌の上に山から運んだ土壌で客土を行い、ハウス栽培に適した環境を作っている。この土壌はアロフェン質黒ボク土で、バークや籾殻も混ぜて土壌改良されている。アロフェン質土壌はアルミニウムの問題を抱えるが、バークの添加により相乗効果が期待できる。 このように、異なる土壌を組み合わせることで、それぞれの弱点を補い、作物栽培に適した土壌を作り出すことができる。小滝の事例と同様に、客土は土壌改良の有効な手段と言える。

 

泥炭土は有機質土

/** Geminiが自動生成した概要 **/
宮城県涌谷町で泥炭土を目撃し、その土壌について調べた。泥炭土は、加湿地の植物遺体が分解堆積した泥炭層を持つ土で、低湿地や水田に分布する。特徴は腐植含量が高く、無機態養分に乏しく、地耐力が小さい。涌谷町の泥炭土は、元は湖底に堆積した有機物が、地形の変化で陸地化したものと推測される。土壌インベントリーの情報から、表層は無機質で覆われているが、これは水田での鉱物の堆積によるものと考えられる。

 

東北へ

/** Geminiが自動生成した概要 **/
宮城県遠田郡涌谷町での農業研修を機に、東北地方の地質と土壌について考察。涌谷町はフォッサマグナや棚倉構造線の北に位置し、火山フロントの東側ながら黒ボク土は少ない。地質図によれば、山間部は火山岩、平野部は海成・非海成堆積岩から成り、土壌はグライ土が多い。実際に畑の土壌を観察すると、京都の土壌に似ているものの、乾燥した部分の形状は異なり、泥炭土の可能性が示唆された。

 

再び四国徳島の三波川帯へと目を向けてみると

/** Geminiが自動生成した概要 **/
四国徳島で見られる緑色の石は、三波川変成帯に由来する。これは、かつてユーラシア大陸端に存在した日本列島に、海のプレートが沈み込む際に玄武岩質の岩体が潜り込み、高圧で変成、隆起したものだ。同様のメカニズムで秩父帯、四万十帯も形成され、日本列島の大陸からの分離後も、これらの地質帯は関東から九州へ横断して存在する。徳島の土壌の豊かさも、玄武岩質変成岩由来の粘土鉱物の豊富さに起因する可能性がある。地体構造を理解することで、地質図の「付加体」のブラックボックスが解消される。

 

白鬚神社の磐座

/** Geminiが自動生成した概要 **/
滋賀県にある白鬚神社は、琵琶湖畔の鳥居と道路を挟んで反対側にある本殿が特徴。本殿近くの山道を登ると、巨岩の磐座が祀られている。この巨岩は人が運ぶには困難な場所にあり、周囲の風化とは対照的に残っていることから、神秘的な意味を感じさせる。地質図によると、この巨岩は日本がユーラシア大陸と繋がっていた時代に形成された花崗岩質の深成岩である。

 

京丹波の質志鍾乳洞

/** Geminiが自動生成した概要 **/
鉄鉱石採掘跡の近くにある鍾乳洞を探検した記録。丹波地方の鐘乳洞は、かつて製鉄所で使われた鉄鉱石の産地付近に位置している。鉄鉱石は、鍾乳洞と同じく石灰岩地帯に多く存在する。鍾乳洞形成には、石灰岩を溶かす水と、空洞を作る地殻変動が必要となる。丹波地方は、地殻変動が活発な地域で、多くの鍾乳洞が存在する理由もそこにある。探検した鍾乳洞は、急斜面や狭い通路があり、内部は美しく、自然の神秘を感じさせる空間だった。鍾乳石や石筍などの鍾乳洞特有の景観も楽しめた。鉄鉱石と鍾乳洞という、一見無関係に見えるものが、地質学的な繋がりを持つことを示す興味深い探検だった。

 

ヒスイ輝石のあるところ

/** Geminiが自動生成した概要 **/
糸魚川で発見されたヒスイ輝石は、プレート沈み込み帯の低温高圧下で生成される。大陸プレートと海洋プレートの衝突地点付近の付加体最下層で、曹長石を原料に生成された後、蛇紋岩に捕獲され地表付近まで上昇してきた。そのため、ヒスイは糸魚川-静岡構造線ではなく、その西側の付加体エリアで発見される。小滝川上流の明星山麓も蛇紋岩地帯であり、この生成過程と合致する。しかし、同じ蛇紋岩地帯である大江山ではヒスイ発見の報告がないため、更なる調査が必要である。

 

長野の栄村小滝集落の米づくり後編

/** Geminiが自動生成した概要 **/
長野県栄村小滝集落では、水田の土壌と米の生育の関係を調査。ある水田で秋落ちが発生し、原因が不明であった。周囲の水田と異なり、この水田のみ山の土での客土を行っていなかった。小滝集落では伝統的に、赤い粘土質の土を水田に入れ、土壌改良を行っていた。これは、土壌中の鉄分バランスを保つのに役立っていた可能性がある。客土していない水田は基盤調整で砂っぽくなっており、鉄分不足が秋落ちの原因と考えられる。水田に流入する水にも鉄分が多く含まれるため、現在では客土の必要性は低いと考えられるが、秋落ちした水田で客土を行い、効果を検証する予定。

 

長野の栄村小滝集落の米づくり前編

/** Geminiが自動生成した概要 **/
長野県栄村小滝集落の米作りに関する記事の前編。高品質の米が収穫できる理由を探るため、土壌や地質を調査。土壌は黒ボク土で、地質は玄武岩質の苦鉄質火山岩類。東日本大震災の地震で山に大きな亀裂が入り、周辺には玄武岩と思われる黒い石が散在。湧水が出ている場所の川底は赤く、鉄分が多いと推測される。この湧水が水田に流れ込んでいる。後編では、これらの要素が米作りにどう影響しているのかが解説される。

 

土壌分析アプリSoil3 on SOY Shop

/** Geminiが自動生成した概要 **/
長野県栄村小滝集落は、標高が高く冬季の積雪が多い地域。良質な米作りには土壌の理解が不可欠で、土壌図インベントリーとシームレス地質図を活用。インベントリーからは「黒ボク土」と判明し、保水性が高い反面、養分保持力が低い特性が明らかに。地質図からは、付近に蛇紋岩が多く分布し、土壌が弱アルカリ性であると推測。これらの情報から、小滝集落の土壌は水はけがよく、ミネラル豊富な一方、窒素が流亡しやすい特徴を持つと結論づけ、適切な施肥設計の必要性を示唆した。実際、小滝集落の土壌はpH7.0~7.2を示し、分析結果と合致した。この事例は、公開データを用いた土壌分析の有効性を示している。

 

SOY CMSで常時SSL化対応後の各記事内の画像のパスの対応

/** Geminiが自動生成した概要 **/
SOY CMSの常時SSL化後、記事内の画像パスがhttpのままとなり、エラーが発生する問題を解決するプラグインが作成されました。記事内の画像はhttpで始まる絶対パスで挿入されるため、手動またはデータベース操作で修正が必要ですが、このプラグインを使えば記事内の画像パスを一括でスラッシュから始まる絶対パス(例:/site/files/hoge.jpg)に変換でき、常時SSLに対応できます。プラグイン名は「画像URL変換プラグイン」で、saitodev.co/soycms/からダウンロード可能です。

 

農研機構の日本土壌インベントリー

/** Geminiが自動生成した概要 **/
黒ボク土は、水はけが良い反面、保水力・保肥力が低い。リン酸固定も多く、肥料効率が悪い。窒素過剰吸収による生育障害のリスクもある。団粒構造の発達が悪く、乾燥すると微細な土粒子となり、風食や土埃の原因となる。物理性が悪いため、耕耘の抵抗が大きく、過剰な耕耘は土壌構造を破壊し、悪化させる。保水性・保肥力の向上には、有機物添加が有効。土壌改良資材や被覆栽培も有効策となる。適切な管理を行うことで、黒ボク土の弱点を克服し、生産性を高めることができる。

 

神奈川県の新横浜付近にある畑の色

/** Geminiが自動生成した概要 **/
新横浜付近の畑の土は黒く、南九州の黒ボク土に似ている。地質図からは非海成堆積岩類としかわからず、火山灰由来の関東ローム層であることは判別できない。周辺の山も堆積物としか記載がない。黒ボク土分布図でアロフェン質黒ボク土と確認できたが、地質図だけでは土質の予想は難しい。平野部では土壌特定の別の指標が必要となる。

 

南九州の黒ボク土

/** Geminiが自動生成した概要 **/
鹿児島市南部は、主にシラスを起源とするアロフェン質黒ボク土が広がっている。この土壌は腐植に富み、保水性・排水性が高い反面、アルミニウムの溶脱による障害リスクも抱えている。見た目は黒色で柔らかく、ふかふかした状態。サツマイモ栽培に適した土壌だが、基肥設計を最適化することで更なる品質向上が期待できる。物理性は良好だが、化学性には注意が必要。

 

京都舞鶴の大江山超塩基性岩体地域

/** Geminiが自動生成した概要 **/
京都舞鶴の大江山は、かんらん岩や蛇紋岩といった超塩基性岩で世界的に有名な地域。そこで緑色の石を発見し、かんらん石(宝石名:ペリドット)ではないかと推測。かんらん石はMg₂SiO₄とFe₂SiO₄の組成を持つケイ酸塩鉱物で、熱水変成すると蛇紋岩や苦土石に変化する。写真の白い部分は炭酸塩鉱物に似ているが、かんらん石が透明になったものか、蛇紋岩特有の模様かは不明。この地域で聞き取り調査を行い、次回に続く。

 

再び東尋坊の国営農地へ

/** Geminiが自動生成した概要 **/
東尋坊近くの国営農地で、深く掘り返された畑の土壌を観察した。土壌は赤っぽく粘土質で、安山岩質の火山岩が風化したものと推測される。地質図もこれを裏付けている。以前訪れた桜島も安山岩質であり、火山灰の風化による土壌形成との共通点が見られる。掘り返された土壌の粘土質な性質から、この地域の岩は粘土鉱物まで風化が進んでいると考えられる。赤っぽい土壌は安山岩由来の可能性を示唆しており、今後の土壌観察の指標となる。

 

醒ヶ井宿の居醒の清水

/** Geminiが自動生成した概要 **/
滋賀県米原市の醒ヶ井宿は、名水百選「居醒の清水」で有名な湧水地。この清冽な水で育つ梅花藻は、水温15℃前後の澄んだ湧水を好む希少種。湧水周辺の地質は玄武岩質やチャートの付加体だが、近隣の霊仙山は石灰岩のカルスト地形を形成している。梅花藻の生育には、安定した水温に加え、玄武岩や石灰岩の成分も影響している可能性がある。醒井渓谷など更なる調査が必要。

 

美濃加茂の黒ボク土

/** Geminiが自動生成した概要 **/
約10年前、岐阜県美濃加茂市で師の元で栽培を学んでいた人の畑が黒ボク土だった。当時は土壌に関する知識が乏しかったが、最近飛水峡を訪れた際に美濃加茂を再訪し、改めて黒ボク土の畑を観察した。その土は非常に黒く、家畜糞主体で土作りをしていても黒ボク土でなければ到達しない黒さだと感じた。近隣のトウモロコシ畑や耕起の時期から、水田ではなく畑作の土の色だと推測。黒ボク土分布図と日本シームレス地質図で確認すると、美濃加茂市の一部は黒ボク土の元となる苦鉄質火山岩類であることがわかった。石から得られる情報量の多さを改めて実感した。

 

峰山の山を切り開いてできた国営農地

/** Geminiが自動生成した概要 **/
京丹後の峰山にある国営農地を訪れた筆者は、赤い水の流れや緑色の石に興味を持つ。これらの石は以前訪れた夜久野高原の火山岩に似ており、地質図を調べると農地北西に火山由来の地層が存在することが判明。農地造成時に山を切り開いた際に現れたか、近隣から持ち込まれた可能性が考えられる。赤い水は鉱物の風化によるものと思われ、この地域の鉄加工が盛んだったことと関連があるかもしれない。また、以前訪れた真砂土と黒ボクが混在する畑の土壌も、鉄やマグネシウムが多い特殊な真砂土の可能性が出てきた。

 

稲作発祥の地「月の輪田」

/** Geminiが自動生成した概要 **/
京丹後市峰山町二箇で「稲作発祥の地」の旗を発見した著者は、その真偽を確かめようとする。しかし、看板は電気柵の向こうで読めず、アクセスも悪いことから疑問を抱く。丹後地方には徐福伝説があり、京丹後市観光協会のサイトによると、徐福がもたらした技術によって丹後王国が発展したとされている。しかし、なぜ徐福が丹後に辿り着き、文化を伝えたのか、著者は疑問を呈する。地質図を調べると花崗岩質であり、何かを発見したからこそ文化が定着したのではないかと推測し、更なる調査を示唆して終わる。

 

Googleの圧縮アルゴリズムBrotliを試してみた

/** Geminiが自動生成した概要 **/
Brotli圧縮を試した結果、gzipよりも高い圧縮率を実現できることが分かり、サーバーでの利用を検討。Ubuntu 18.04ではaptでbrotliをインストール可能。画像ファイルの圧縮テストでは、オリジナル870.3kBに対し、Brotliは856.8kB、gzipは861.0kBと、Brotliが僅かに優れていた。圧縮コマンドは`brotli 元ファイル -o 圧縮ファイル`、解凍は`brotli -d 圧縮ファイル -o 元ファイル`。次の記事では、ApacheサーバーでBrotliを利用する方法を解説する。

 

寛永通宝を模した銭形砂絵

/** Geminiが自動生成した概要 **/
香川県観音寺市の銭形砂絵付近の砂を観察した記録です。著者は徳島での仕事の前日に観音寺市に立ち寄り、巨大な寛永通宝の砂絵「銭形砂絵」を初めて見ました。砂絵の由来は資料焼失のため謎に包まれています。砂絵付近は砂丘農業が盛んなため、砂を採取し観察しました。付近の地質は花崗岩で、砂には白い光沢のある鉱物に着色されたものが多く見られました。観察結果から immediate な結論は得られませんでしたが、将来役立つ可能性を考慮し記録に残しました。鳥取砂丘の記事へのリンクも含まれています。

 

徳島の名水の江川の湧水

/** Geminiが自動生成した概要 **/
徳島でのネギ栽培者向け勉強会の休憩中、公民館で「江川の湧水」の看板を見つけた著者は、珍しい地質の三波川変成帯にある名水への期待を膨らませた。勉強会後、湧水を見に行ったが、水は湧いていなかったものの、川底に緑色の石を発見。これは、この地域特有の緑泥石で、ベントナイトに含まれる緑の石に似ていた。緑泥石はマグネシウムを含む鉱物で、周辺の石材屋や石垣、畑でも多く見られた。著者は、緑泥石が風化してマグネシウムを土壌に供給し、この地域の栽培を容易にしているのではないかと推測した。

 

FFmpegとAudacityで動画の音声の調整に挑戦!

/** Geminiが自動生成した概要 **/
動画編集ソフトFFmpegとAudacityを使って、動画の音声調整に挑戦した記録。元の動画の音量が小さく、ノイズが多かったため、Audacityで音量増幅とノイズ除去を実施。FFmpegで動画と音声の結合を行い、改善された動画を作成した。具体的には、Audacityで波形を見ながら音量を30dB増幅し、ノイズプロファイルを採取してノイズ除去を2回行った。結果、「サー」というノイズが消え、以前より聞き取りやすい音声になった。

 

糠漬け時の乳酸発酵に迫る

/** Geminiが自動生成した概要 **/
酸の強さは水素イオン濃度で決まり、pH値で表される。pH値が小さいほど酸性は強く、金属を溶かす力も高まる。これは酸が金属と反応し、水素ガスを発生させながら金属イオンを生成するためである。反応のしやすさは金属の種類によっても異なり、イオン化傾向の大きい金属ほど酸と反応しやすい。塩酸などの強酸は多くの金属を溶かすことができる一方、弱酸は反応性が低い。酸が金属を溶かす反応は、電池や金属の精錬など様々な分野で利用されている。

 

長野県下水内郡栄村の美味しい米

/** Geminiが自動生成した概要 **/
長野県栄村の美味しい米の秘密を探るため、著者は地質に着目した。雪解け水に着目していた生産者とは異なり、地質図から、栄村は苦鉄質火山岩石(玄武岩質)の麓で、黒ボク土壌形成の条件を満たしていることを発見。黒ボク土壌は、玄武岩質火山灰、腐植、冷涼な気候の組み合わせで生まれる。栄村は積雪量が多く、5ヶ月にわたる積雪が土壌を湿らせ、苦鉄質ミネラル豊富な地下水を供給し、理想的な栽培環境を作り出している。さらに、地質図からカリウム不足を補う貫入岩の存在も示唆された。実際に現地調査を行った記事へのリンクも掲載されている。美味しい米は、優れた土壌とミネラル豊富な水、そして生産者の丁寧な栽培の賜物だと結論付けている。

 

PHPExcelを使ってみた

/** Geminiが自動生成した概要 **/
PHPExcelライブラリを使ってExcelファイルからデータ抽出する方法を紹介。Ubuntu 17.04、PHP 7.1.5環境で、php7.1-xml、php7.1-gd、php7.1-zipをインストール後、PHPExcelをダウンロード。サンプルxlsファイルからデータを読み込むPHPコードを掲載し、セル番号と値を出力する例を示している。コードは拡張子による読み込み方法の切り替え、複数シートへの対応、行とセルのイテレータによる値の取得を実装。出力結果の画像も掲載。

 

五代松鍾乳洞横にあったスカルン鉱床

/** Geminiが自動生成した概要 **/
興福寺の国宝「華原磬(かげんけい)」の台座が、奈良県天川村洞川産の大理石を用いて復元された。華原磬は天平時代に製作された青銅製の磬で、かつては大理石の台座に載っていたが、明治期に紛失。今回、約1300年ぶりに台座が新調された。洞川産の大理石は、江戸時代から昭和初期にかけて採掘され、東大寺大仏殿の礎石などにも使用された良質な石材。今回の復元では、地元住民の協力により石材が確保され、伝統技術を用いて加工された。天平時代の技術と地元の歴史が融合した貴重な文化財が現代に蘇った。

 

天川村洞川の鉄鉱跡にて

/** Geminiが自動生成した概要 **/
奈良県天川村洞川の廃坑となった五代松鉱山跡を訪ねた。鉄鉱山跡の近隣に鍾乳洞が存在することに疑問を抱き、周辺の岩石を観察した。白い花崗岩らしき岩石を発見し、地質図を確認すると鉱山付近は花崗岩質深成岩、隣接地域は堆積岩(付加体)だった。花崗岩と鉄の関係、鍾乳洞の存在理由など、疑問は深まるばかり。近隣の採石業者から得た情報もあるため、詳細は次回へ続く。

 

玄武岩質的な火山灰土壌の色は黒だった

/** Geminiが自動生成した概要 **/
夜久野高原の宝山付近で赤い土を確認後、周辺の畑の土壌を観察したところ、黒い黒ボク土であった。黒ボク土は玄武岩質火山灰、腐植、冷涼な気候が条件となるが、宝山は冬季に雪が残るため条件を満たす。大陸の赤い土とは異なり、水分豊富な日本では赤い土壌の形成は難しい。奄美大島など一部地域を除き、良質な土壌の条件は局所的である。宝山から車で10分ほど移動すると京都特有の白い土壌に変化し、土壌の違いを改めて実感した。日本シームレス地質図を活用すれば、このような土壌分布の理解が深まる。

 

土質の理解を求め川の上流へ

/** Geminiが自動生成した概要 **/
山を構成する岩石は、風化・侵食によって細粒化し、最終的に粘土になる。花崗岩は風化に弱く、構成鉱物の剥離によって真砂土と呼ばれる粗い砂状になる。これがさらに風化すると、様々な鉱物が含まれた粘土へと変化する。堆積岩である頁岩は、粘土が固まったものだが、これも風化によって再び粘土に戻る。つまり、岩石の種類に関わらず、風化・侵食の過程で粘土へと変化していく。風化の進行度合いにより、様々な粒度の土壌が存在するが、最終的には粘土にたどり着く。この粘土は栄養豊富なため、植物の生育を支える重要な役割を果たす。

 

日本シームレス地質図で見えることが増えたはず

/** Geminiが自動生成した概要 **/
「日本の石ころ標本箱」を参考に、栽培の成功/失敗と地質の関係を探る試み。成功地は酸性岩土壌、失敗地はチャート主体で規則性を持つ母岩だった。サンプル数は少ないが、地質を事前調査することで栽培適地の判断材料になると考えた。産総研の日本シームレス地質図を用いて、ミネラル欠乏がない地域は超塩基性岩/塩基性岩地帯、鉄過剰症の地域は塩基性岩地帯と判明。事例は少ないが、今後各地で地質と栽培結果を比較することで、より精度の高い事前予測が可能になると期待している。関連として海底火山の痕跡についても言及。

 

さくらの共有サーバで二つのショップサイトを独自ドメインで運営する方法について

/** Geminiが自動生成した概要 **/
さくら共有サーバーのスタンダードプランで、二つの独自ドメインショップサイトをSNI SSLで運営する方法。まず、mainsite.jpをルートディレクトリに設置し、SNI SSLを設定。設定ファイル内のURLを独自ドメインに変更する。次に、subsite.jpをsubディレクトリに設置し、マルチドメイン設定とSNI SSLを設定。設定ファイル内のURLも変更。最後に、subディレクトリの.htaccessに`RewriteBase /`を追加することで、subsite.jpのサブページへのアクセスエラーを解消する。

 

NW.jsを試す

/** Geminiが自動生成した概要 **/
中学生向けプログラミング教室で、JavaScriptでアプリ制作をする生徒が出てきたため、デスクトップアプリ作成の選択肢としてNW.jsをUbuntuで試した。npmでnw.jsをインストール後、index.htmlとpackage.jsonを作成し、`npm start`で実行した結果、"Hello World!"とNode.jsのバージョンが表示された。ランチャーに登録したNW.jsアイコンからも同じ画面が起動できた。しかし、端末操作が必要なため、中学生には敷居が高いと判断し、他の方法を検討することにした。

 

Ubuntuサーバのメモリ開放

/** Geminiが自動生成した概要 **/
SOY CMSサイトのバックアップをDropboxで自動化する方法を紹介しています。記事では、Dropbox Uploaderを利用したバックアップ方法を解説し、cronで定期実行を設定することで手間を省いています。具体的な手順として、Dropbox Uploaderのインストール、トークンの取得、アップロードコマンドの作成、cronへの登録方法を詳しく説明。さらに、バックアップ後のメモリ解放コマンドも追記し、サーバー負荷軽減にも配慮しています。この方法により、安全かつ効率的なバックアップ体制を構築できるでしょう。

 

SOY CMSでwwwありとなしのどちらでもアクセスできるサイトでの管理画面の対応

/** Geminiが自動生成した概要 **/
SOY CMSのconfig.ext.phpは、管理画面のカスタマイズを可能にする強力なツールです。管理画面のURLの変更、ログイン画面へのリダイレクト設定、.htaccessを利用したアクセス制限、管理画面のデザイン変更、独自機能の追加などが実現できます。データベースへのアクセスやSmartyテンプレートの利用も可能です。ただし、PHPの知識が必要で、不適切な記述はシステムエラーに繋がるため注意が必要です。このファイルはバージョンアップの影響を受けず、安全にカスタマイズを維持できます。

 

SOY CMSのブログで地図アプリを作ろう3

/** Geminiが自動生成した概要 **/
SOY CMSのブログで地図アプリを作成する過程の記事です。前回はブログトップページに地図と詳細ページへのリンク付きインフォウィンドウを表示しました。今回は、詳細ページにも地図とGoogleマップへのリンクを表示する方法を解説しています。記事には、詳細ページに埋め込むHTMLコードが掲載されています。`cms:id="title_plain"`、`cms:id="lat"`、`cms:id="lng"`を使って記事のタイトル、緯度、経度を埋め込み、JavaScriptで地図を表示、Googleマップへのリンクを生成しています。これにより、詳細ページでも店舗の位置情報が確認できるようになりました。

 

SOY CMSで記事編集中にブラウザを閉じる際にアラートを出す

/** Geminiが自動生成した概要 **/
SOY CMSの記事編集中にブラウザを閉じると、入力内容が失われるのを防ぐため、確認アラートを表示するプラグインが開発されました。フォーラムで要望があり、記事タイトル編集中に限られますが「本当に閉じますか?」とアラートを表示します。下書き自動保存と併用すると効果的です。プラグインはフォーラム、またはGitHubで配布されています。改良版はGitHubにあり、`alert.js`を修正すれば他の箇所にも対応可能。修正後はフォーラムで共有が推奨されています。

 

SOY CMSのブログで地図アプリを作ろう2

/** Geminiが自動生成した概要 **/
SOY CMSのブログ機能を利用した地図アプリ作成の第2弾では、マーカークリック時のインフォウィンドウ表示を実装しました。前回設定したカスタムフィールド(サムネイル、緯度経度)に加え、ブログ記事のタイトルとリンクをインフォウィンドウに表示するようにテンプレートを修正。具体的には、JavaScriptでインフォウィンドウの内容を生成し、マーカークリックイベントで表示する処理を追加しました。これにより、地図上のマーカーから各店舗の詳細ページへ遷移できるようになりました。将来的にはSOY Shopと連携させ、カテゴリを店舗名として地図上に店舗を表示するショップページの作成も構想されています。

 

SOY CMSのブログで地図アプリを作ろう1

/** Geminiが自動生成した概要 **/
Google Maps APIを用いてSOY CMSのブログに地図アプリを作成する手順の第一段階を解説した記事です。まずGoogle API ConsoleでAPIキーを取得し、SOY CMSにカスタムフィールド「lat(緯度)」と「lng(経度)」を追加します。ブログページを作成し、提供されたHTMLテンプレートを貼り付け、地図の中心座標とズームレベルを調整します。座標はGoogle Mapsで場所を検索し、右クリックメニューの「この場所について」から取得できます。最後に、ブログ記事を作成し、タイトルと本文に加え、カスタムフィールドに取得した緯度経度を入力して公開します。これにより、ブログトップの地図上にマーカーが追加され、訪問場所を視覚的に表示できます。次記事ではマーカーに詳細情報を表示する機能を追加する予定です。

 

SOY Shopの商品詳細ページで登録されている商品をランダムで表示する

/** Geminiが自動生成した概要 **/
SOY Shopの商品詳細ページで登録商品をランダム表示するPHPモジュールを作成する方法です。まず、管理画面でモジュールID「item.random」のPHPモジュールを作成し、指定のコードを記述します。このコードはSOY2DAOを使い、全商品、または指定カテゴリの商品をランダムに取得し、表示件数を制限するSQLを実行します。商品詳細ページテンプレートに`<!-- shop:module="item.random" -->`と`<!-- block:id="random_item_list" -->`を記述することで、ランダムに選ばれた商品が表示されます。カテゴリを指定するには、`$categoryId`変数にカテゴリIDを代入します。

 

SOY CMSのサイトのバックアップをDropboxで行う

/** Geminiが自動生成した概要 **/
SOY CMSサイトのDropboxバックアップ方法を紹介。まずDropboxアカウントを作成し、サーバーに64ビット版CLI版Dropboxをインストール。サーバをDropboxアカウントにリンク後、バックアップスクリプト(dbbackup.sh)を作成し、cronで毎朝3時にサイトディレクトリをzip圧縮してDropboxへ同期させるよう設定。自動起動設定としてcrontabの@rebootを利用。debファイル経由のインストール方法も追記。再起動しない場合はdropbox start -iコマンドを試す。パスワード付きzip化などの関連記事へのリンクも掲載。

 

SOY CMSの確認のリンクをスラッシュ終わりにしました

/** Geminiが自動生成した概要 **/
SOY CMSのページ一覧の確認リンクで、URL末尾が拡張子でない場合にスラッシュを追加する修正が行われました。これは、スラッシュの有無で相対パス指定の画像やCSSの表示に差異が生じる問題への対応です。ブログページで確認リンクをクリックした際、一覧からはスラッシュなし、詳細からはスラッシュありで表示される不整合を解消しました。修正はGitHub上のパッケージに反映されています。

 

私にとっての農業とSOY Shop

/** Geminiが自動生成した概要 **/
新規就農者は、野菜の栽培で手一杯のため、販売に割く時間がない。そのため、野菜の価格決定権が市場に握られ、価格が下がった際に収入が不安定になりやすい。この問題を解決するために、営業不要で販路を確保できるネットショップ活用が有効だ。研修中に開発したECサイト構築システム「SOY Shop」を導入し、自ら販売サイトを構築。ブログやSNSで情報発信し、顧客との直接的な関係を築くことで、安定した経営を実現した。この成功事例は他の新規就農者にも参考になるだろう。

 

SOY CMSのブログでプレビュー用のページを作成してみる

/** Geminiが自動生成した概要 **/
SOY CMSのブログにはプレビュー機能がないが、記事を任意の場所に貼り付けられる機能を利用してプレビューページを作成できる。まず、プレビュー用のページ(例:/preview)を作成し、「プレビュー」ラベルを設定、Basic認証で保護する。記事投稿時に「プレビュー」ラベルのみを選択すれば、プレビューページにのみ記事が表示される。確認後、「ブログ」ラベルを追加すれば本番公開となる。実際には、ダイナミック編集で非公開記事も確認できるため、プレビュー機能の代替として活用可能。

 

アブシジン酸の働き、そして毒性はあるのか?

/** Geminiが自動生成した概要 **/
果実内発芽は、種子が休眠できずに発芽する現象で、アブシジン酸(ABA)の不足が原因である。ABAは、水ストレス時の気孔閉鎖、種子休眠誘導、器官離脱に関与する植物ホルモン。玄米に多く含まれるABAは、活性酸素生成を促すため毒性があると噂される。ストレスを感じた植物はABAを合成し、ABAが活性酸素生成の鍵となる。活性酸素は通常、ミトコンドリアで生成されるが、ABA蓄積により過剰生成される可能性が懸念され、玄米食の危険性が議論されている。

 

サイトマップ結合プラグインからサイトマップページを作成してみよう

/** Geminiが自動生成した概要 **/
SOY CMSとSOY Shopのサイトマップを統合するプラグインを活用し、サイトマップページを作成する方法を紹介。モジュールを作成し、統合XMLを読み込み、各URLからページタイトルを取得してリンクを生成するPHPコードを記述。無限ループ対策としてGETパラメータ`xml_search`を使用。しかし、各ページのHTMLを取得する処理が重く、キャッシュ生成の必要性が示唆されている。

 

SOY2DAOでSQLを実行して、オブジェクトで返す

/** Geminiが自動生成した概要 **/
SOY2DAOで複雑なSQLを実行しつつ、結果をオブジェクトで取得する方法が紹介されています。顧客テーブルとカスタムフィールドテーブルを結合し、特定のカスタムフィールド値を持つ顧客情報を取得する例が示されています。 `SOYShop_UserDAO` の `executeQuery` でSQLを実行し、結果の配列をループ処理で `getObject` メソッドに渡すことで、各レコードが `SOYShop_User` オブジェクトに変換されます。これにより、カスタムフィールドの値で検索しながら、必要な顧客情報のみをオブジェクトとして扱いやすく取得できます。この手法は、以前紹介されたSOY CMSの検索フォーム追加の記事でも活用されています。

 

SOY2DAOでデータベースから値を取り出す

/** Geminiが自動生成した概要 **/
SOY2DAOを用いたデータベースからの値の取得方法を解説。プリペアードステートメントに続き、今回はDAOの機能を活用した取得方法を紹介。SOY Shopの顧客情報を例に、`SOY2DAOFactory::create("user.SOYShop_UserDAO")` でDAOオブジェクトを生成し、`$userDao->get()` でデータを取得する様子をコードで示す。取得したデータはSOYShop_Userオブジェクトの配列となり、`$user->getName()` のようにゲッターメソッドで簡単に値にアクセスできる。SQL直接実行の場合と比べ、オブジェクト指向の恩恵で可読性・安全性が向上する点を強調。最後に、SQL実行結果もオブジェクトで扱いたいケースへの言及で締めくくっている。

 

SOY2DAOでプリペアードステートメントを利用する

/** Geminiが自動生成した概要 **/
SOY2DAOでプリペアードステートメントを使う方法を解説します。SQLインジェクション対策として、SQL内に直接値を埋め込むのではなく、プレースホルダ(:name)を使用します。 例: $sql = "SELECT * FROM soyshop_user WHERE mail_address = :mail AND password = :pass"; $binds = array(":mail" => $m, ":pass" => $p); $results = $dao->executeQuery($sql, $binds); executeQueryの第二引数にプレースホルダと値の連想配列を渡すことで、SOY2DAOが安全にSQLを実行します。これにより、$mや$pにSQL構文が挿入されても、悪意のあるクエリの実行を防ぎます。

 

SOY CMS/Shopのモジュール内でSQLを実行する

/** Geminiが自動生成した概要 **/
SOY CMS/Shopのモジュールでは、PHPで自由にSQLを実行できる。PDOは結果の整形が面倒だが、SOY2DAOクラスを使うと便利。 例えば、`soyshop_user`テーブルから上位5件を取得するSQLを、PDOで実行すると連想配列と数値添字配列の混合配列が返り使いにくい。SOY2DAOの`executeQuery`メソッドを使うと、同じSQLでも整形された連想配列として結果が返るため、foreach文などを書かずに扱える。

 

SOY Shopで複数カテゴリの様な設定を行う

/** Geminiが自動生成した概要 **/
SOY Shopでは複数カテゴリ機能はパフォーマンス低下のため廃止され、代替としてカスタムサーチフィールドプラグインが推奨されています。カスタムサーチフィールドでは、チェックボックス形式で複数の「タグ」を商品に設定可能。管理画面で項目を追加し、商品詳細ページでタグを選択、商品一覧ページには専用ページを作成し、CustomSearchFieldItemListモジュールを適用することでタグによる絞り込みを実現します。URLは「http://ドメイン/ショップID/ページのURL/フィールドID/タグ値」となります。ただし、管理画面の商品検索ではカスタムサーチフィールドによる検索は不可。その対策として、各フィールドに一括設定ページが用意され、簡易的な商品検索フォームが利用可能です。

 

SOY ShopのURLの設定方法

/** Geminiが自動生成した概要 **/
SOY ShopのサイトURLは、`/CMSインストールディレクトリ/soyshop/webapp/conf/shop/`にある`サイトID.conf.php`(例:soy.conf.php)内の`soy_SOYSHOP_SITE_URL`で定義されています。 例えば`http://localhost/soy/`を`http://example.com/`に変更すれば、公開側のURLが変わります。サイトディレクトリは`soy_SOYSHOP_SITE_DIRECTORY`で変更可能です。ただし、ルート直下以外の運用は動作保証外のため、変更時はconf.phpのバックアップ必須です。

 

SOY Shopの統計プラグインで注文件数が多くなったサイトでも快適に表示できるように修正しました

/** Geminiが自動生成した概要 **/
SOY Shopの統計プラグインの表示速度が改善されました。注文件数の多いサイトでは、統計計算に時間がかかっていましたが、原因は注文一覧ページの無駄な二重検索処理でした。統計処理時に、一覧用の検索結果を破棄して再度統計用の検索を行っていたため、メモリを浪費し、計算時間が増大していました。この無駄な処理を修正することで、表示速度が大幅に向上しました。修正版はフォーラムまたはGitHubのパッケージ置き場から入手できます。

 

SOY Mailの送信予約を使ってみよう

/** Geminiが自動生成した概要 **/
SOY Mailの送信予約機能はcronを用いて実現する。管理画面で送信日時を設定するが、cronの設定が必須。cronは「分 時 日 月 曜日 コマンド」の形式で記述し、コマンドはSOY Mail管理画面のヘルプを参照。送信日時とcron設定を一致させるとその時刻限定の送信となるため、10分おき等にSOY Mailのコマンドを実行し、予約日時を超えた未送信メールを送信するよう設定するのが効率的。ただし、サーバによっては短時間での大量送信でエラーとなる場合があるため、SOY Mailの分割配信機能を考慮し、最低でも20分間隔での実行が推奨される。

 

SOY CMS/Shopでクラス名と同名のメソッドでエラーになる件を修正

/** Geminiが自動生成した概要 **/
KAGOYAのマネージド専用サーバでPHP7にアップグレードした際、SOY CMS/Shopでクラス名と同名のメソッドがコンストラクタとして使われているためエラーが発生した。PHPの次期バージョンではこの記法が非推奨となるため、`__construct()`への変更が必要だった。`WebPage`クラスなどでも同様の問題があり、修正パッチを作成しGitHubに公開した。公式サイトにも反映されることを期待している。

 

SOY Shopのポイント付与プラグインで誕生月購入ポイントプレゼントを追加しました

/** Geminiが自動生成した概要 **/
SOY Shopのポイント付与プラグインに、誕生月購入者へのポイントプレゼント機能が追加されました。設定画面で特典ポイント数を指定すると、購入者の誕生月に限り、通常のポイントに加えて追加でポイントが付与されます。 この機能はプラグインとして提供され、SOY CMSフォーラムからダウンロード可能です。誕生月特典は顧客への還元策として有効で、リピーター獲得に貢献します。

 

SOY CMSのサイトでPageSpeed Insightsのスコアが99になりました

/** Geminiが自動生成した概要 **/
SOY CMSサイトのPageSpeed Insightsスコアを99にするため、静的化プラグインを開発。標準ページをHTMLファイル化し、システムを経由せず直接読み込むことで高速化を実現。記事更新時はindex.html、ページ更新時は該当HTMLを削除し、即時反映を維持。DB接続回数を減らしサーバー負荷も軽減。内部SEO対策にも有効。プラグインはフォーラムで配布中だが、Google Analytics設置に関する提案への対応は未解決。

 

SOY CMS/Shopのブロックで最後とそれ以外のデータで表示を変えたい

/** Geminiが自動生成した概要 **/
SOY CMS/Shopのブロックで、リストの最初と最後で表示を変える方法を紹介。`soy:id="at_last"`と`soy:id="not_last"`を使えば、最後の要素だけ、または最後以外の要素だけに特定のHTMLを出力できる。例えば、記事一覧で最後の記事の下にだけ太線を表示するといったことが可能。 さらに、`soy:id="at_first"`と`soy:id="not_first"`と組み合わせることで、より複雑な表示制御が可能になる。例えば、カテゴリ一覧で最初の要素にのみカテゴリタイトルと`<ol>`タグを出力し、最後の要素にのみ`</ol>`タグを出力することで、無駄なHTMLを出力せずに済む。

 

SOY CMS/Shopのブロックで最初とそれ以外のデータで表示を変えたい

/** Geminiが自動生成した概要 **/
SOY CMS/Shopのブロックで、記事一覧表示の際に最初の要素とそれ以降で表示を変える方法を紹介しています。HTMLListクラスの`soy:id="at_first"`と`soy:id="not_first"`を用いることで、最初の記事ではサムネイルを200px、2つ目以降の記事では150pxで表示する例を挙げています。具体的なコードも示されており、画像のサイズ変更にはサーバサイドの画像圧縮機能を活用しています。さらに、`cms:id="content" cms:length="250"`で記事本文を250文字に要約して表示する方法にも触れています。

 

肥料の原料編 第2巻 発刊します!

/** Geminiが自動生成した概要 **/
「肥料の原料編 第2巻」では、野菜栽培者向けに発酵鶏糞の製造過程、牛糞堆肥の問題点、廃菌床の活用法を解説。全47記事、約300ページで、鶏糞中の有機態リン酸やフィチン酸の活用、土壌分析の落とし穴、EC値、塩類集積、臭気対策、粘土鉱物など、土壌改良に関する幅広い知識を提供。 特に、発酵鶏糞、牛糞堆肥、きのこの廃菌床を肥料として活用する際のメリット・デメリットを詳細に説明。土壌の化学的性質や成分分析、臭気対策といった実践的な内容に加え、粘土鉱物のような関連知識も網羅。第1巻と合わせて、より深く肥料原料を理解するための必読書。

 

SOY Shopの非同期カートボタンプラグインでボタンを押した後にフキダシ表示を追加してみた

/** Geminiが自動生成した概要 **/
SOY Shopの非同期カートボタンプラグインに、商品追加時の視認性向上のため、吹き出し表示機能が追加されました。従来、縦長のページではカート投入後の変化が分かりづらいという課題がありました。今回のアップデートで、ボタン押下直後にカートの中身を表示する吹き出しが現れ、ユーザーは商品が正しくカートに追加されたことを確認できます。吹き出しの位置はボタンの座標から計算され、上部に表示されるよう設計されています。ただし、サンプル数が少ないため、表示の不具合発生時は連絡が推奨されています。プラグインのダウンロードと詳細はSOY CMSフォーラムで確認可能です。

 

SOY Shopの商品規格プラグインでセール価格の設定を追加しました

/** Geminiが自動生成した概要 **/
SOY Shopの商品規格プラグインがアップデートされ、商品規格ごとにセール価格を設定できるようになった。従来の在庫数・価格設定に加え、セール価格も個別に設定可能。適用するには、親商品の詳細画面で「セール中」をチェックする必要がある。これにより、紐づく全ての規格にもセール価格が反映される。このアップデートにより、商品規格ごとに柔軟な価格設定が可能になり、販売戦略の幅が広がる。機能の詳細はSOY CMSフォーラムで確認できる。

 

SOY Shopのマイページでログインの有無でテンプレートを分ける機能を追加しました

/** Geminiが自動生成した概要 **/
SOY Shopのマイページで、ログイン有無によるテンプレート切り替え機能が追加されました。従来はログイン前後で同じテンプレートを使用していましたが、ログイン前は1カラム、ログイン後は2カラムといったレイアウト変更の要望に応えるため、ログイン時に別のテンプレートを読み込む仕組みが実装されました。 具体的には、`mypage.html` というテンプレートを使用している場合、ログイン時は `mypage_no_login.html` と `mypage_no_login.ini` があればそちらが優先的に使用されます。これらのファイルは管理画面からは生成できず、手動でサーバーにアップロードする必要があります。機能の詳細はSOY CMSフォーラムとGitHubリポジトリで公開されています。

 

SOY Shopのメールビルダから出力される商品一覧に並び順設定を追加しました

/** Geminiが自動生成した概要 **/
SOY Shopのメールビルダープラグインに、注文メールの商品一覧の並び順設定機能が追加されました。 従来、自動出力される商品一覧の並び順は固定でしたが、このアップデートにより変更が可能になります。 メールビルダーの管理画面から、商品名、商品コード、数量、価格の各項目を昇順/降順に指定することで、希望の並び順で商品一覧を出力できます。 ダウンロードと詳細はSOY CMSフォーラムにて提供されています。 この機能により、注文メールの可読性向上や業務効率化に繋がります。

 

SOY CMSの画像のリサイズでJPEGのロスレス圧縮を追加した

/** Geminiが自動生成した概要 **/
SOY CMSでサーバサイド画像リサイズを実装後、PageSpeed Insightsで「ロスレス圧縮で容量削減可能」と指摘されたため、jpegoptimを導入した。Ubuntuに`sudo apt-get install jpegoptim`でインストール後、`/CMSインストールディレクトリ/common/im.inc.php`の`imagejpeg`実行後に`jpegoptim $savepath`を実行するよう改修。これにより、ロスレス圧縮の指摘が解消され、PageSpeed Insightsのモバイルスコアが93から96に向上した。変更コードはフォーラムで配布されている。

 

SOY CMSの画像のリサイズ時にPNGの透過を無効にする

/** Geminiが自動生成した概要 **/
SOY CMSで画像リサイズを行う際、PNG画像の透過部分が黒くなる問題の解決策を紹介している。原因はアルファチャンネルの透過設定で、SOY CMSのリサイズ機能が透過に対応していないため。解決策として、`imagecreatetruecolor`後に`imagealphablending($dstImage, false);`と`imagesavealpha($dstImage, true);`を追加することで、透過PNGも正しくリサイズできる。修正はGDでのリサイズにのみ対応しており、ImageMagickは未対応。

 

SOY Shopで購入回数属性自動振り分けプラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY Shopのメールマガジン機能では、購入回数による絞り込み送信ができないため、顧客属性を活用する必要がある。しかし、手動設定は顧客数が多いと手間がかかる。そこで、購入回数に応じて自動で属性を振り分けるプラグインが開発された。管理画面で回数と属性名を設定し、cronに自動更新スクリプトを登録すれば、顧客全員に自動で属性が設定される。このプラグインにより、購入回数に基づいたメール配信が可能になる。ダウンロードはSOY CMSフォーラムにて提供されている。

 

電子書籍の販売を始めました

/** Geminiが自動生成した概要 **/
齋藤毅の妻、亮子が夫の農業ブログを電子書籍化。亮子はJAや農業法人での経験、ミャンマーでの農業研修を経て、従来の農業の常識を覆す齋藤の知識に感銘を受けた。牛糞堆肥の代わりにバーク堆肥や鉱物を推奨するなど、化学式に基づいた齋藤の土作り論は、亮子にとって衝撃的だった。土作りに悩む農家や、慣習的に資材を選んでいる人に向けて、齋藤の知見を共有したいと考え、書籍化に至った。価格は500円(税込)。サンプルの閲覧方法も用意されている。

 

SOY CMSのサムネイルプラグインでラベル毎に標準画像の設定を追加しました

/** Geminiが自動生成した概要 **/
SOY CMSで記事投稿時に毎回サムネイル画像を用意するのは手間がかかる。特に、カテゴリ毎に同じようなサムネイルを使い回したい場合、作業効率が悪い。そこで、サムネイルプラグインの設定画面でラベル毎に画像を設定できるように機能拡張した。記事投稿時に該当ラベルにチェックを入れるだけで、予め設定した画像パスがアップロードフォームに挿入される。異なる画像を使いたい場合は、通常通りアップロードフォームから画像を指定すれば良い。この改良により、カテゴリ毎に共通のサムネイル画像を設定する場合の作業負荷が大幅に軽減される。尚、サムネイルプラグインを使わずとも、記事本文の画像をリサイズ表示する方法もある。

 

SOY CMSで表示直前で画像のリサイズ表示を行う

/** Geminiが自動生成した概要 **/
SOY CMSでサイト表示を高速化するために、表示直前にサーバ側で画像リサイズを行う方法を紹介しています。Google PageSpeed Insightsで低評価を受けた画像サイズの問題を解消するため、サムネイルプラグインではなく、SOY CMSの隠し機能を活用。 具体的には、カスタムフィールドに画像パスを入力し、imgタグのsrc属性に`im.php?src=[画像パス]&width=[幅]`を指定することで、動的にリサイズされた画像を表示。従来のHTMLのwidth属性による縮小表示よりもパフォーマンスが向上し、PageSpeed Insightsのスコアも改善。 記事では、設定変更前後の具体的なコード例やスクリーンショットを交えながら解説。リサイズ処理はJPEG、PNG、GIFに対応し、作業フローを簡略化しつつサイト高速化を実現。次回、CSSや画像のキャッシュ設定について解説予定。

 

インストーラーで再インストール後にサイトを復元

/** Geminiが自動生成した概要 **/
SOY CMSのインストーラによる再インストール後、サイトを復元する方法です。 まず、再インストール前にサイトのソースコードからサイトID(例: /site/files/ の"site"部分)を確認しておきます。 次に、インストーラで再インストールする際、インストール先ディレクトリを既存のものと異なる名前に変更します。インストール完了後、初期管理者を作成し、「サイトの復元」ではなく「サイトの作成」を選択します。 ここで、事前に確認しておいたサイトIDを入力してサイトを作成します。サイトIDが正しければ、既存のファイル群が使用され、サイトが復元されます。 最後に、元の管理画面URL(例: /cms/admin)で再インストールを行い、以前のデータベースに接続できないようにすることでセキュリティ対策を行います。データベース接続設定ファイル(例: mysql.db)を復旧すれば、元のアカウントも復元可能です。

 

SOY CMSでインストーラを削除せずにいたらどうなるか?

/** Geminiが自動生成した概要 **/
SOY CMSのインストーラを削除しないと、再インストールが可能になり、サイトデータが消去される危険性がある。攻撃者は用意したデータベース情報で再インストールし、初期管理者権限を奪取できる。管理画面URLが判明していれば、インストーラ経由でサイトを初期化・乗っ取りが可能。他CMSでもインストーラが残っていれば同様の危険があるため、インストール後は必ず削除する必要がある。

 

SOY CMS/ShopでPHPモジュールに使用の制限を設けました

/** Geminiが自動生成した概要 **/
SOY CMS/Shopのセキュリティ強化のため、テンプレートエディタとPHPモジュールでのPHP実行に制限が加わりました。PHPの使用は、`user.config.php`で`SOYCMS_ALLOW_PHP_SCRIPT`を`true`にすることで許可されます。 PHPモジュールはさらに`SOYCMS_ALLOW_PHP_MODULE`を`true`にすることで利用可能になります。これらの設定により、テンプレートやモジュールでPHPコードの実行を制御し、セキュリティリスクを軽減します。アップデートはGitHubから入手可能です。

 

CMSに不正にログインした後、何をする?

/** Geminiが自動生成した概要 **/
ウェブサイトがサイバー攻撃の標的となる脆弱性を抱えているかを判断する方法が解説されています。攻撃者は古いバージョンのCMSや安全でないお問い合わせフォームなどを利用して不正アクセスを試みます。記事では、SOY CMSを例に、不正ログイン後に攻撃者が踏み台として悪用する具体的な手順と、その対策が示されています。具体的には、ファイルマネージャーからのPHPファイルアップロードの制限、フロントコントローラーの編集制限、そしてファイルパーミッションの変更による対策が紹介されています。攻撃者はウェブサイトのソースコード、ログインフォームのバージョン、お問い合わせフォームのHTTPS化などを確認することで攻撃対象を選定するため、これらの対策が重要となります。

 

SOY CMSに総当り攻撃を仕掛けてみる。その4

/** Geminiが自動生成した概要 **/
Go言語で書かれたSOY CMSへの総当り攻撃スクリプトを改良し、CSVファイルからIDとパスワードを読み込むように変更した。これにより、コードの可読性が向上し、辞書を使い回せるようになった。 実行結果から、指定のIDとパスワードでログイン成功を確認。今後の課題として、メモリ効率の改善、対象サイトURLの指定、ログイン成功時の判定処理などが挙げられている。

 

SOY Shopの消費税別表示モジュールで税込通常価格と税込セール価格のタグを追加しました

/** Geminiが自動生成した概要 **/
SOY Shopの消費税別表示モジュールに、税込通常価格と税込セール価格を表示するタグが追加されました。これにより、セール価格がお得かどうかを税込価格で比較可能になります。 追加機能は、SOY CMSフォーラムかGitHubで公開されているパッケージからダウンロードできます。消費税別表示モジュールを使用しているユーザーは、税込価格表示で顧客に分かりやすい価格表示が可能になります。

 

SOY CMSのブログで記事表示順番号(通し番号)を出力させたい

/** Geminiが自動生成した概要 **/
SOY CMSのブログで記事の表示順番号(通し番号)を出力する方法を紹介します。記事一覧を出力するブログテンプレートで、`<div>この記事は何記事目?→<strong><!-- soy:id="index" --></strong>1<strong><!-- /soy:id="index" --></strong>記事目</div>`のように`soy:id="index"`を記述することで、記事の表示順番号が出力されます。これはSOY2HTMLのHTMLListクラスの機能を利用しています。HTMLListには最初/最後の記事用のタグや、特定の条件に一致する記事用のタグなども用意されています。

 

SOY CMSに総当り攻撃を仕掛けてみる。その3

/** Geminiが自動生成した概要 **/
Go言語で書かれたコードを用いて、SOY CMSへの総当たり攻撃を試行。パスワード候補の配列を定義し、ループ処理でログインを試みる。一致するパスワードが見つかった場合、処理を中断し「ログイン成功」とID、パスワードを表示する。今回は"********"でログイン成功。このコードはパスワード候補を増やすことで、複雑なパスワードでも突破可能。しかし、SOY CMS側では複数回ログイン失敗するとエラーが表示される対策が取られていることが確認された。

 

SOY ShopにEC CUBE2.4系のログインチェックを導入しました

/** Geminiが自動生成した概要 **/
EC-CUBE2.4系からSOY Shopへの移行時に、顧客のパスワードをそのまま利用できるようログインチェック機能を導入。EC-CUBEとSOY Shopのパスワード暗号化方式の違いを考慮し、SOY Shop側でEC-CUBEの暗号方式を適用する処理を追加。暗号化パスワードにスラッシュの有無でEC-CUBEかSOY Shopかを判別。EC-CUBE2.4.4以前のバージョンに対応しており、顧客がパスワードを変更すればSOY Shopの方式に自動更新されるため、特別な切り替えは不要。将来的には2.11.1以降のバージョンにも対応予定。修正版はフォーラムまたはGitHubから入手可能。

 

SOY CMSに総当り攻撃を仕掛けてみる。その2

/** Geminiが自動生成した概要 **/
Go言語でSOY CMSへの総当り攻撃コードを改良した。前回はトークンチェックで攻撃が無効化されたため、今回はトークン取得とセッションキー保持の処理を追加した。具体的には、ログインページからトークン値を抽出し、自作のCookieJarを用いてセッションキーを保持することで、正規のログインと同様にトークンを送信できるようにした。この改良により、辞書攻撃が可能になった。 最後に、管理画面URLの特定の容易性と攻撃のしやすさを指摘し、URLを複雑にする、IDを辞書攻撃されにくいものにするなどの対策の必要性を訴えている。

 

SOY CMSに総当り攻撃を仕掛けてみる。その1

/** Geminiが自動生成した概要 **/
SOY CMSへの総当たり攻撃を試行する記事。Go言語でログインを試みるコードを作成し、IDとパスワードを固定で送信、ログイン失敗を確認。本来は辞書データを用いて繰り返し実行する計画だったが、SOY CMSのログインフォームにトークンのチェックがない事を発見。GitHubで管理しているコードにトークンチェックを追加し、攻撃を阻止した。

 

SOY CMSのソーシャルボタン設置プラグインでPocketに対応しました

/** Geminiが自動生成した概要 **/
SOY CMSのソーシャルボタン設置プラグインがPocketに対応しました。Pocketは後で読む記事を保存するサービスです。 専用タグを挿入することでPocketボタンを設置でき、記事ページなどに表示されます。修正ファイルはSOY CMSフォーラムで配布中。

 

SOY CMSのブログで投稿されたコメントを編集したい

/** Geminiが自動生成した概要 **/
SOY CMSブログのコメント編集機能が拡張されました。従来はコメント本文のみ編集可能でしたが、要望に応えタイトルと投稿者名の編集も可能になりました。管理画面のコメント一覧から該当コメントを選択し、「タイトル」または「投稿者名」ボタンをクリックすると編集フォームが表示され、変更が可能になります。投稿日時と記事タイトルの編集には未対応です。この機能の詳細はSOY CMSフォーラムで公開されています。

 

予約フォーム開発でSOY Shopのマイページを活用する

/** Geminiが自動生成した概要 **/
SOY Appで予約フォームに会員機能を追加する際、SOY Shopのマイページ機能を活用することで開発工数を削減できる。ログイン画面への遷移は、URLパラメータ`r`にリダイレクト先を指定することでログイン後に元の予約フォームへ戻れる。本記事では、会員登録後も同様に`r`パラメータでリダイレクト先を指定することで、登録完了後に予約フォームへ戻れるよう改良したパッケージをGitHubで公開している。この仕組を活用すれば、会員限定ページへのアクセス制御なども容易に実装できる。

 

EC CUBEからSOY Shopにデータベースを引っ越す

/** Geminiが自動生成した概要 **/
EC-CUBEの動作遅延に悩むユーザーが増加し、高速なSOY Shopへの移行ニーズが高まっている。そこでEC-CUBEからSOY Shopへのデータ移行プラグインが開発された。このプラグインはEC-CUBEのデータベースから直接データを読み込み、SOY Shop用に変換・挿入する。パスワードはセキュリティ上、ランダムに設定され、ユーザーには再設定を促すメルマガ送信が推奨される。EC-CUBE2系と3系のデータ移行実績があり、フォーラムで配布されている。

 

SOY Shopで非同期で商品をカートに入れたい2

/** Geminiが自動生成した概要 **/
SOY Shopで商品を非同期にカートに追加するJavaScriptのカスタマイズ方法。カートの表示部分にIDを付与し、JavaScriptで非同期通信(XMLHttpRequest)を使ってカート情報を更新する。非同期通信に対応していないブラウザのために同期処理へのフォールバックと、タイムアウト時の処理も追加。さらに、ボタンの連打防止策として実行中フラグを用いて多重リクエストを防いでいる。これらの機能をプラグイン化することも検討中。

 

SOY Shopで非同期で商品をカートに入れたい1

/** Geminiが自動生成した概要 **/
SOY Shopで非同期に商品をカートに入れる方法を解説。Ajaxを用いて、カートボタンクリック時にページ遷移なしでカートに追加する。まず、JavaScriptでカート操作URLへの非同期通信を行う関数を定義。次に、カートボタンのHTMLを書き換え、この関数を実行するように変更する。これによりカートへの追加自体は非同期で行われるが、画面上のカート情報は更新されない。次回、この点を改善し、カート追加をユーザーに分かりやすく表示する方法を解説予定。

 

SOY Shopでキャンペーンプラグインを作成しました

/** Geminiが自動生成した概要 **/
SOY Shop用のキャンペーンプラグインが開発されました。管理画面でブログのようにキャンペーンコンテンツを作成・編集し、公開期間を設定できます。自動バックアップ機能も搭載。トップページやフリーページ、マイページ、カートページなど、表示場所を自由に指定可能です。キャンペーン詳細は専用のページに表示されます。利用にはSOY Shop 1.17.3p7.3以降、SOY CMS 1.8.12p7.6以降が必要です。GitHubからパッケージを入手できます。意見・要望はフォーラムへ。

 

Go言語で認証鍵を使ってSSHの接続を行う

/** Geminiが自動生成した概要 **/
Go言語でSSHの秘密鍵認証によるリモートサーバ接続を実装する方法が紹介されています。 `ioutil.ReadFile` で秘密鍵ファイル(id_rsa.pem)を読み込み、`ssh.ParsePrivateKey` でパース、`ssh.PublicKeys` で公開鍵を設定することでパスワード認証から秘密鍵認証に変更できます。`id_rsa.pem` ファイルは `openssl` コマンドで `id_rsa` から変換する必要があります。 サンプルコードでは、接続後、リモートサーバに空ファイルを作成する処理を実行しています。

 

Go言語でサーバのバックアップの仕組みを作ろう。SSH編

/** Geminiが自動生成した概要 **/
Go言語でサーバのバックアップを作成するため、SSH接続を用いたファイルコピーから、Zipファイルのダウンロード方式に変更された。 `golang.org/x/crypto/ssh` パッケージを利用し、SSH接続を確立、リモートでコマンドを実行するテストコードが作成された。このコードは、指定したサーバに接続し、空のファイル`empty.txt`を作成することに成功。今後の開発は、このSSH接続とコマンド実行機能をベースに、Zipファイルのダウンロード処理を実装する方向で進められる。

 

Go言語でサーバのバックアップの仕組みを作ろう。Walk編

/** Geminiが自動生成した概要 **/
Go言語でファイルサーバのバックアップを作成する過程の記録。今回は同一PC内でのディレクトリとファイルコピーを実装。`filepath.Walk`でディレクトリ構造を走査し、`os.Stat`でバックアップ先にディレクトリが存在しなければ`os.Mkdir`で作成。ファイルは`os.Open`、`os.Create`、`io.Copy`でコピー。`tree`コマンドでコピー結果を確認し、ディレクトリ構造とファイル内容が正しくコピーされたことを確認。ただし、ファイル更新日時を考慮したコピー処理は未実装。

 

zshの起動と同時にtmuxも起動してほしい

/** Geminiが自動生成した概要 **/
zsh起動時にtmuxも自動起動させる方法について解説。zshの設定ファイル`.zshrc`に`[[ -z "$TMUX" && ! -z "$PS1" ]] && tmux`を追記することで実現。この設定により、端末起動時にtmuxが既に起動しているかどうかを`$TMUX`で確認し、起動していない場合は`tmux`コマンドを実行する。結果、端末起動と同時にtmuxも起動し、ステータスバーが表示されるようになる。

 

鉄と上手なお付き合い

/** Geminiが自動生成した概要 **/
鉄イオンは電子を放出しやすく受け取りやすい性質から、生物の様々な反応に関与する。例えば、植物は鉄イオンを利用して硝酸イオンを還元し、窒素を同化する。また、生物は活性酸素を用いて菌を殺菌するが、活性酸素は自身の細胞も傷つけるため、スーパーオキシドディスムターゼ(SOD)とペルオキシダーゼを用いて活性酸素を鎮める。これらの酵素は鉄(もしくはマンガン)から電子を受け取り、活性酸素を無害化する。つまり、鉄は活性酸素の生成と消去の両方に重要な役割を果たしている。このように、鉄とうまく付き合うことで、生物は様々な代謝をスムーズに行うことができる。

 

中学生にプログラミングを教えてみて。その4

/** Geminiが自動生成した概要 **/
中学生にプログラミングを教える中で、コンピュータが0と1で動く仕組みを理解させるため、C言語で書いたコードをアセンブリ言語、さらにバイナリの実行ファイルに変換する過程を見せた。苦Cとコンピュータサイエンスの教科書を参考に、gccコマンドでアセンブルとコンパイルを行い、出力されたhoge.sとa.out(バイナリ)を提示。バイナリエディタで16進表示されたa.outから2進数での動作を想像させ、理解を促した。後々「コンピュータシステムの理論と実装」が理解を深める上で役立つと気づいた。

 

SOY CMSのブログのページ生成設定で404になる条件がある不具合を修正しました

/** 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以降で適用可能。

 

SOY Inquiryでお問い合わせフォームの確認画面で指定の箇所までジャンプしたい

/** Geminiが自動生成した概要 **/
SOY Inquiryで確認画面をフォームの先頭に表示する方法です。まず、form.phpの`<form>`タグに`action="#confirm"`を追加します。次に、confirm.phpの入力内容確認箇所の直前に`<div id="confirm"></div>`を挿入します。これで、確認画面表示時にフォームの先頭にジャンプします。完了画面にも適用する場合は、complete.phpでも同様の操作を行います。ただし、この方法ではURLに#confirmが残ります。URLを綺麗にしたい場合は、PHPでaction属性を動的に指定する必要があります。

 

SOY Shopの商品一覧ページでカスタムフィールドの値で商品の並び替え

/** Geminiが自動生成した概要 **/
SOY Shopのソートボタン設置プラグインでカスタムフィールドの値によるソートが可能になりました。商品カスタムフィールドの「高度な設定」で「ソートに使用する」にチェックを入れると、プラグイン管理画面にソート用タグが表示されます。このタグを商品一覧ページテンプレートに貼り付けることで、カスタムフィールド値に基づくソートボタンが設置できます。機能はsoyshop_1.17.3p7.2.zip以降のパッケージか、フォーラムの修正ファイルで利用可能です。

 

葉緑素の合成で苦土と同じぐらい大事なものは?

/** Geminiが自動生成した概要 **/
鉄は葉緑素合成に必須のアミノレブリン酸生成に不可欠な要素である。土壌中に豊富に存在すると言われる鉄だが、過剰な炭素循環型農法では欠乏症による枯死も発生する。鉄吸収には、三価鉄を二価鉄に還元して吸収するストラテジーⅠ型と、三価鉄をキレートして吸収するストラテジーⅡ型がある。ストラテジーⅠ型では根の表面の還元酵素が利用される。植物は光合成で水から電子を得るが、鉄吸収にも電子が必要となる。鉄は日中に得た電子のプールとして機能し、鉄欠乏は電子の取りこぼしにつながる可能性がある。つまり、鉄吸収は光合成と密接に関連している。土壌の還元も鉄吸収に影響を与える。

 

アミノレブリン酸のポテンシャル

/** Geminiが自動生成した概要 **/
アミノレブリン酸(ALA)は、植物の葉緑素や赤血球成分など重要な物質の前駆体。ALA合成には硝酸還元に必要なシロヘムの生成に鉄が必要で、ALA周辺分子が不足すると硝酸利用効率が低下する。光合成不足では硝酸態窒素が活用されない点と合致する。鉄は二価鉄である必要があり、有機物由来の電子で三価鉄が還元されるため、糖の潤沢な供給が重要。ALA肥料は鉄、マグネシウムとの併用で効果を発揮するが、高濃度では除草剤となるため注意が必要。ALAは多くの生物が必要とするため元肥効果は限定的だが、特定状況下では大きな効果が期待できる。

 

SOY CMSでプラグインブロックを追加してみた

/** Geminiが自動生成した概要 **/
SOY CMSのスクリプトモジュールブロックをプラグイン化し、簡単に導入できる「プラグインブロック」機能が追加されました。サイト構築時に毎回スクリプトを設定する手間を省き、記事一覧表示の効率化を実現します。プラグインをインストール後、ブロック設定でプラグインブロックを選択し、プラグインIDを指定するだけで利用可能です。プラグインIDは各プラグインの詳細説明に記載されています。この機能はsoycms_1.8.12p7.2以降で使用可能で、GitHubからパッケージをダウンロードできます。バージョンアップ時はuser.config.phpにPluginBlockComponentの追加が必要となる場合があります。

 

SOY CMSのブロックで記事のランダム表示

/** Geminiが自動生成した概要 **/
SOY CMSのブロックで記事をランダム表示するスクリプトモジュールブロックのコードが紹介されています。指定したラベルの記事をランダムに並び替え、指定件数分出力します。 `/site(サイトID)/script/soycms_random.php` にPHPコードを記述し、テンプレートで `cms:label` にラベルID、`cms:count` に取得件数を指定することで利用できます。コードはフォーラムにもアップロードされています。記事の取得件数を指定しない場合は、該当ラベルのすべての記事を取得しランダムに表示します。

 

PHPで楽天市場の商品登録を楽しよう:Apacheのインストール編

/** Geminiが自動生成した概要 **/
楽天市場の商品登録作業効率化のため、PHPによるローカル検証環境構築を目指し、複数PCへのインストール手順を記録している。今回はApache2.4のインストール方法を紹介。まずPCが64ビットか確認後、Apache動作に必要なVisual C++再頒布可能パッケージをインストールする。次にApacheの64ビット最新版をダウンロード、解凍し、Apache24フォルダをCドライブ直下に配置。httpd.confのServerNameをlocalhost:80に修正する。Windows環境変数のPathにC:\Apache24\bin;を追加し、コマンドプロンプトでhttpd -k startを実行。ブラウザでhttp://localhostにアクセスし"It Works!"が表示されればApacheのインストールは完了。次回はPHPのインストールについて。

 

蕎麦殻には貯蔵タンパクが多そうだ

/** Geminiが自動生成した概要 **/
ジスルフィド結合は、2つのシステイン残基のチオール基が酸化されて形成される共有結合で、タンパク質の三次構造の安定化に重要な役割を果たす。ジスルフィド結合は、タンパク質のフォールディング、安定性、機能に影響を与える。細胞質ゾルのような還元環境ではジスルフィド結合は形成されにくいが、小胞体のような酸化環境では形成されやすい。ジスルフィド結合は、酸化還元反応によって切断・再形成されるため、レドックスシグナル伝達にも関与する。ソバアレルゲンFag e 2はジスルフィド結合を多く含むため、消化酵素による分解が困難で、アレルギー反応を引き起こしやすいと考えられている。

 

さくらのVPS + Apache2.4のサーバでSSL対応してみた

/** Geminiが自動生成した概要 **/
さくらVPS上のApache2.4でSSL証明書を設定する方法を解説した記事です。opensslを用いて秘密鍵とCSRを作成し、認証局に提出、発行された証明書と中間CA証明書を所定のディレクトリに配置、Apacheの設定ファイルを編集してSSLを有効化します。設定ファイルでは、証明書ファイル、秘密鍵ファイル、中間CA証明書のパスを指定します。最後にApacheを再起動し、httpsでアクセスしてSSL設定を確認します。記事ではLet's Encryptを使った簡便な設定方法への言及もあります。

 

お名前.comで取得したドメインをさくらのVPSとさくらのメールボックスに当てる

/** Geminiが自動生成した概要 **/
お名前.comドメインをさくらVPSとさくらのメールボックスに適用する方法。共有サーバーからVPSへの移行に伴い、メールサーバーは共有サーバーを継続利用するため、ドメインを両方に割り当てる必要がある。お名前.comのDNSレコード設定で、AレコードにVPSのIPアドレス、MXレコードに共有サーバーのメールサーバーのドメインを設定する。MXレコードにはIPアドレスではなくドメインを指定する点が重要。設定後、MX lookupサービスで確認し、さくらの共有サーバーのコントロールパネルでドメインを追加する。Aレコードの反映には時間がかかる場合がある。

 

さくらのVPSにGoの環境を構築してみた

/** Geminiが自動生成した概要 **/
さくらのVPSにGo環境を構築し、アプリケーションサーバを起動した際のメモ。UbuntuにGit, Go, MySQLをインストールし、アプリをビルド、実行した。ポート80での起動はroot権限が必要だったため、`sudo ./app -addr=:80`で実行。バックグラウンド実行は`&`を追加し、停止は`kill -KILL プロセスID`を使用。セキュリティ設定は別途必要。

 

Dockerの他コンテナにあるSOY CMSからMySQLのコンテナにアクセスしてみる

/** Geminiが自動生成した概要 **/
Docker Composeを用いて、PHP7/ApacheとMySQLのコンテナを連携させ、SOY CMSを動作させる方法を解説。MySQLコンテナでは`bind-address`を指定し、PHPコンテナでは`pdo_mysql`拡張をインストールする必要がある。データベース接続設定では、MySQLコンテナの内部IPアドレスとポート(3306)を指定。SOY CMSのデータベース設定ファイル(mysql.php)を適切に編集することで、コンテナ間のデータベースアクセスを実現。記事では、`docker-compose.yml`の設定例や、コンテナ内でのデータベース作成手順、SOY CMSの初期設定画面へのアクセス方法などを示している。また、PHP7環境でのSOY CMS動作に関する修正はGitHubで公開されている。

 

さくらのVPSでSOY CMSを動かした時のメモ

/** Geminiが自動生成した概要 **/
Apacheサーバのバージョン表示はセキュリティリスクとなるため、非表示にすることが推奨されています。本記事では、Apacheの設定ファイル`httpd.conf`または`apache2.conf`を編集することで、バージョン情報を隠す方法を解説しています。具体的には、`ServerTokens`ディレクティブを`Prod`に設定することで、公開されるサーバ情報を最小限に抑えられます。また、`ServerSignature`ディレクティブを`Off`にすることで、エラーページなどからサーバのバージョン情報が削除されます。これらの設定変更後、Apacheを再起動することで変更が反映されます。さらに、セキュリティ対策としてmod_securityなどのセキュリティモジュール導入も推奨しています。

 

SOY Inquiryでアップロードフォームを設置した時、確認メールで画像を確認したい

/** Geminiが自動生成した概要 **/
SOY Inquiryでアップロードフォームを複数設置した場合、確認メールで全ての画像URLを確認する方法を紹介します。標準では管理画面でしか確認できませんが、メールテンプレートをカスタマイズすることで実現可能です。 `/インストールディレクトリ/app/webapp/inquiry/src/template/default/mail.admin.php` に記述を追加します。`$comments` から各コメントのコンテンツを取得し、正規表現で `<img src="">` タグ内のURLを抽出します。抽出したURLにサイトURLを付加して、確認メールの末尾に「添付ファイル」として表示します。複数画像に対応するため、ループ処理で全てのコメントをチェックし、画像URLを追記していきます。これにより、確認メールで全てのアップロード画像を直接確認できるようになります。

 

SOY Inquiryでコンバージョンタグを利用する

/** Geminiが自動生成した概要 **/
SOY Inquiryでコンバージョンタグを利用する方法を解説します。URLパラメータ`sample_conv`で渡された値をセッションに保存し、お問い合わせ完了画面でhiddenフィールドに表示、メール本文にも含めることができます。 `index.php`にセッション保存処理を追加し、新規テンプレート`soy`の`complete.php`にhiddenフィールド出力処理を追加します。`mail.admin.php`と`mail.user.php`にコンバージョンタグに関する表記を追加することで、管理者・ユーザー向けメールにも表示可能です。完了画面表示前にメールが送信されるため、完了画面で値を利用しない場合はセッションを破棄する処理のコメントアウトを外してください。

 

SOY Shopでログインしているお客様へポイントの使用期限を表示する

/** Geminiが自動生成した概要 **/
SOY Shopでログイン中のお客様にポイント残高と使用期限を表示するモジュール作成方法を紹介。モジュールID「parts.point_limit」を作成し、提供されたPHPコードを記述することで実現。コードは、ログイン状態、ポイントプラグインの有効性を確認後、ユーザー情報を取得し、ポイント残高と使用期限を表示。期限切れや無期限の場合の表示も追加可能。コードにはコメントが添えられており、カスタマイズのヒントも提供。ポイントはログインユーザーのみに表示され、未ログイン時は何も表示されない。より詳細なカスタマイズや機能要望は問い合わせフォームから。

 

SOY CMSの常時SSL化で対応したこと

/** Geminiが自動生成した概要 **/
さくらインターネットの共有サーバーでSOY CMSを常時SSL化するために実施した手順を紹介。画像パスの修正、SNI SSL対応、リダイレクト設定、サイトURLの変更、サイトマップ作成とSearch Console登録を行った。画像パスは絶対パスに変更し、SNI SSLのためにSOY CMS本体のコードを修正。リダイレクトはindex.phpに記述、サイトURLもhttpsに変更した。最後にサイトマップを作成しSearch Consoleへ登録。SOY Shopの場合は別途対応が必要。

 

golangでテストを書いてみたのでメモ

/** Geminiが自動生成した概要 **/
Go言語のテスト方法についての記事です。`sample.go`に`MakeRandomString`(ランダム文字列生成)と`Convert`(MD5ハッシュ化)関数を定義し、`sample_test.go`にテストコードを書きます。`Test`+関数名でテスト関数を定義し、`t *testing.T`を引数に取ります。`Convert`関数のテストでは、空文字やハッシュ化前文字列と等しい場合に`t.Error("failed")`でエラーとします。`go test`コマンドでテストを実行し、`PASS`なら成功、`FAIL`なら失敗となります。`MakeRandomString`関数のテストでは、2回生成した文字列が同じであればエラーとしています。

 

SOY Shopで商品カテゴリの一括設定

/** Geminiが自動生成した概要 **/
SOY Shopで商品数が増えると、CSVでのカテゴリ編集が困難になる。特にカスタムフィールドを多用するとCSVファイルが肥大化し、作業効率が低下する。複数カテゴリ設定もSOY Shopでは非対応。 そこで、商品一覧画面で複数商品を選択し、一括でカテゴリを設定・変更・解除できる機能が開発された。このシンプルな機能追加により、カテゴリ分け作業が大幅に効率化される。ダウンロードはSOY CMSフォーラムにて提供されている。

 

SOY CMSであれば、管理画面のURLを特定したい

/** Geminiが自動生成した概要 **/
SOY CMSの管理画面URLは`/cms/admin/`が一般的だが、変更可能。そのため、攻撃者は`/soy/admin/`なども試す。管理画面URLを`/c!_m-s/admin/`のように複雑にするのが安全。既存サイトで`/cms/admin/`を使っている場合は、`cms`ディレクトリ名を変更し、`cms`フォルダ内、`index.php`、`shop/index.php`、`site/index.php`内のパスを修正することで変更できる。さらに、Basic認証やIP制限を追加すればより安全。

 

運営しているサイトがSOY CMSであるか調べてみる

/** Geminiが自動生成した概要 **/
SOY CMSで構築されたサイトを特定する方法を紹介。HTML出力のためソースコードからは判別不可。特有のNot Foundページ(/jfoewajfoiwaejflaleiofjwaefwaeのような無意味な文字列へのアクセス)の存在が手がかりとなる。また、ブログ記事URL(/article/記事タイトル)、月別(/month/YYYY/MM)、カテゴリ(/category/カテゴリ名)ページのURL構造も参考になる。その他、問い合わせフォームページのソースに"SOY_Inquiry"や"soy2_token"の文字列があれば、SOY CMSの可能性が高まる。

 

SOY CMSの記事投稿画面でYouTubeの動画の挿入ボタンを追加しました

/** Geminiが自動生成した概要 **/
SOY CMSの記事投稿画面にYouTube動画を簡単に挿入できるボタンを追加しました。HTMLの知識がなくても、ボタンクリックでURLを入力するだけで動画を埋め込めます。オープンソースのTinyMCE用YouTubeプラグインを改変し、動画検索・挿入機能を実装。記事作成時の利便性向上に貢献します。ダウンロードはSOY CMSフォーラムから可能です。

 

PHPで簡易的なクローラを作ってみた

/** Geminiが自動生成した概要 **/
PHPで簡易クローラーを作成し、`file_get_contents()`でサイトのHTMLを取得、特定文字列の有無を調べた。再帰的にページ内のリンクを辿り、同一ドメインのURLを解析するが、既に解析済みのURLはスキップする。`scrape()`関数でHTML解析を行う予定。問題点として、ページ数が多いと記録用配列が肥大化し、対象サーバーへの負荷も高くなることが判明。スラッシュ始まりのURL取得にも未対応。それでも`file_get_contents()`の便利さを実感した。

 

SOY InquiryのレスポンシブとHTML5対応

/** Geminiが自動生成した概要 **/
SOY Inquiryを使ってレスポンシブデザインのお問い合わせフォームを作成する方法を紹介しています。レスポンシブデザインとは、PCとスマートフォンでそれぞれ見やすい表示になるよう自動調整されるWebデザイン手法です。設定は、フォーム設定で「responsive」を選び、スタイルシートを読み込むをチェックするだけ。HTML5のrequired属性にも対応し、必須項目の未入力時に警告を表示できます。設定はカラム設定で「required属性を利用する」をチェックするだけ。pattern属性も利用可能で、入力パターンの指定ができます。フォームの属性にpattern="正規表現"を追加するだけで設定できます。ただし、住所検索機能とは競合するため注意が必要です。ダウンロードやフォーラムへのリンクも記載されています。以前の記事「スマホ対応のお問い合わせフォームを作ってみた」の内容を元に、更に機能が追加されています。

 

SOY Shopの商品レビュープラグインにCAPTCHAを追加

/** Geminiが自動生成した概要 **/
SOY Shopの商品レビュープラグインに、スパム対策としてCAPTCHA機能が追加されました。GDライブラリを利用した画像認証タイプで、GDが利用できない環境ではキーワード入力方式に切り替え可能です。 この機能はSOY CMSフォーラムからダウンロードできます。スパム投稿に悩まされているユーザーは導入を検討すると良いでしょう。

 

キノコの底力

/** Geminiが自動生成した概要 **/
リグニンペルオキシダーゼは、白色腐朽菌がリグニンを分解する際に使う主要酵素。ヘムタンパク質で、過酸化水素を酸化剤としてリグニンの芳香族環を酸化的に開裂する。反応機構は、過酸化水素が酵素のヘム鉄に作用し、化合物Iと呼ばれる活性種を生成。これがリグニンから電子を奪い、ラジカルを形成。この不安定なラジカルが様々な反応経路を経て分解される。 リグニンペルオキシダーゼは非特異的な触媒作用を持ち、多様なリグニン構造を分解できる。この酵素によるリグニン分解は、自然界の炭素循環において重要な役割を果たし、バイオマス利用への応用も期待されている。

 

SOY Shopでセール販売期間設定を追加

/** Geminiが自動生成した概要 **/
SOY Shopのセール期間設定忘れによる販売ミスを防ぐプラグインが開発されました。従来はセール設定のチェックボックスのみで管理していたため、終了後もチェックを外し忘れると意図せずセール価格で販売してしまう問題がありました。このプラグインは、チェックボックスに加えてセール期間を指定する日付フォームを追加。カート投入時に期間設定に基づきセール価格を計算することで、期間外のセール適用を防ぎます。ダウンロードはSOY CMSフォーラムから可能です。

 

SOY Shopで販売期間設定を追加

/** Geminiが自動生成した概要 **/
SOY Shopの販売終了商品の管理画面操作忘れを防止するため、販売期間設定機能が追加された。商品は登録画面でカレンダーから販売開始・終了日時を設定可能になり、期間外は注文エラーとなる。 従来のカート非表示プラグインは手動操作が必要だったが、この機能により自動で販売制御が行える。販売期間開始前も同様に注文が制御される。ダウンロードはSOY CMSフォーラムから可能。

 

SOY CMSのブログで記事の下書きの自動保存機能

/** Geminiが自動生成した概要 **/
SOY CMSのブログ記事作成中に、回線落ちなどで書きかけの記事が消えることを防ぐため、自動保存機能が追加された。記事投稿画面を開いて30秒後に自動でバックアップが作成され、画面上部に通知が表示される。バックアップファイルはサイトIDとログインIDに紐づけて保存されるため、他サイトや別アカウントでは復元されない。記事保存または更新ボタンを押すとバックアップファイルは削除される。この機能により、誤操作による以前のバックアップの復元を防ぐ。ダウンロードはSOY CMSフォーラムから可能。

 

検索フォームと検索結果ページを作ってみた3

/** Geminiが自動生成した概要 **/
SOY CMSで検索機能を実装する方法を解説。`/site(サイトID)/script/soycms_search.php`に検索スクリプトを記述。SQLで記事タイトル、本文、追記フィールドを検索し、公開期間内の記事を抽出。結果はEntryオブジェクトに変換後、配列`$soycms_search_result`に格納。テンプレートには`<form method="get" action="/search">`で検索フォームを設置し、クエリパラメータ`q`で検索文字列を受け取るようにする。`$dao->getObject($row)`で検索結果をEntryオブジェクトに変換することで、テンプレートに記述した`<!-- block:id="result" -->`で表示可能になる。

 

検索フォームと検索結果ページを作ってみた1

/** Geminiが自動生成した概要 **/
スクリプトモジュールブロックを使用して記事検索機能をSOY CMSに追加する方法について説明しています。まず、user.config.phpでスクリプトモジュールを許可し、次にブロックタイプリストにScriptModuleBlockComponentを追加します。記事中の特定の文字列を検索したり、記事をグループ化したりできるようになります。このモジュールを使用することにより、ブログに検索機能を追加し、ユーザーが記事をより簡単に検索できるようにすることができます。

 

スマホ対応のお問い合わせフォームを作ってみた

/** Geminiが自動生成した概要 **/
SOY Inquiryでスマホ対応のレスポンシブなお問い合わせフォームを作成する方法を紹介。標準のフォームはスマホで表示が崩れるため、新しいテンプレートを作成し、HTMLを`<dl>`タグに変更することで解決。`/cmsインストールディレクトリ/app/webapp/inquiry/src/template/`以下にresponsiveディレクトリを作成し、サンプルファイルをコピー。form.phpのテーブル表示を`<dl>`に変更。設定画面でデザインをresponsiveに変更することで、PC・スマホ両対応のフォームが完成。確認画面(confirm.php)と完了画面(complete.php)も同様に`<dl>`タグを用いて修正することで、一貫したデザインを実現。


Powered by SOY CMS   ↑トップへ