以前、こちらの質問サイトで質問した際に回答を頂いた内容で、
以前、こちらの質問サイトで質問した際に回答を頂いた内容で、
Smartyの .tpl ファイルなどに、<?php?>。。。<?/php?>を書き、Javascriptで表示させるというやり方がありました。
回答は別の所から、案を頂き、
function html_load(){
document.title = "<!--{$title_text}-->" + "|" + document.title;
keyword_write($keyword);
}
を
function html_load(){
document.title = "<!--{$title_text}-->" + "|" + document.title;
keyword_write("<!--{$keyword}-->");
}
としました。
以下、全文。
<!--{php}-->
$db_connect = false;
$sql_category = "SELECT category_id,category_name,parent_category_id FROM dtb_category WHERE category_id = ";
$db = mysql_connect(DB_SERVER,DB_USER,DB_PASSWORD);
//mysql_query("SET NAMES utf8");
if(mysql_select_db(DB_NAME, $db))
$db_connect = true;
$title_text = '';
$keyword = ''; //←追記
if ($db_connect){
$sql = $sql_category.$_GET['category_id'];
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
mysql_free_result($result);
$title_temp = $row['category_name'];
while ($row['parent_category_id'] != 0){
$sql = $sql_category.$row['parent_category_id'];
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
mysql_free_result($result);
$title_text = $row['category_name'];
}
if ($title_text != '')
$title_text = $title_text." | ".$title_temp;
else
$title_text = $title_temp;
}
$this->assign("title_text", $title_text);
$this->assign("keyword", $title_text); //←追記
<!--{/php}-->
<script type="text/javascript">
//<![CDATA[
function setEventListener(el, evt, func){
if (el.addEventListener)
el.addEventListener(evt, func, false);
else
el.attachEvent("on"+evt, func);
}
function html_load(){
document.title = "<!--{$title_text}-->" + "|" + document.title;
keyword_write("<!--{$keyword}-->");
}
function keyword_write(keyword){
var meta=document.getElementsByTagName("meta");
for(var i=0;i<meta.length;i++){
if(meta[i].name=="keywords")
meta[i].setAttribute("content",meta[i].getAttribute("keyword")+","+keyword);
}
}
setEventListener(window, 'load', html_load);
//]]>
</script>
そこで、EC-CUBEの環境で、setAttribute、getAttributeが使えないので、
他の方法を教えていただきたく
お礼
回答ありがとうございます。 さすがに、データベースの価値など考えないでしょうね。 考えてくれればいいのですが、無理でしょうね。 >現状では↑のようなお人よしが丁寧に教えてくれます。 そうですね。より丁寧な回答が得られるかも知れませんね。 回答数は、減るでしょうけど。