2

私のマジェントストアでは、メタタグをurlとしてサイドバーに実装する必要があります。

ストアには 2 種類のカテゴリがあります。X と Y として名前が付けられます。

このタイプの結果を取得する必要があります。

  • X -> カテゴリX

    -x1 -x2 -x3

-> カテゴリXのキーワードは URL として指定する必要があります

  • Y -> カテゴリY

    -y1 -y2 -y3

-> カテゴリYのキーワードは URL として指定する必要があります

この問題を解決するのを手伝ってください。

今、私はこのコードを使用しています

<div class="right-tab-middle">

<?php $_helper = Mage::helper('catalog/category') ?>

<?php $_categories = $_helper->getStoreCategories() ?>

<?php $currentCategory = Mage::registry('current_category') ?>

<?php if (count($_categories) > 0): ?>

<ul style="overflow:hidden;">

<div style="color:#BE0171;text-decoration:underline; font-size:16px; font-weight:bold;">Shop by:</div>

<!--    <?php foreach($_categories as $_category): ?>

<li style="margin:10px 0px; ">                                                  

<a style="color:#BE0171; text-decoration:none;" href="<?php echo $_helper->getCategoryUrl($_category) ?>">

<?php echo $_category->getName() ?>

</a>

<?php $_category = Mage::getModel('catalog/category')->load($_category->getId()) ?>
<?php $_subcategories = $_category->getChildrenCategories() ?>

<?php if (count($_subcategories) > 0): ?>

<ul>

<?php foreach($_subcategories as $_subcategory): ?>

<li style="margin:5px 0px 5px 10px; ">

<a style="color:#BE0171; text-decoration:none;" href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>">

<?php echo $_subcategory->getName() ?><br />

</a>

</li>

<?php endforeach; ?>

</ul>

<?php endif; ?>

</li>

<?php endforeach; ?> -->

<?php 
$connection = Mage::getSingleton('core/resource')->getConnection('core_read');
$sql        = "SELECT GROUP_CONCAT( value SEPARATOR ' ' ) as keywords FROM mag_catalog_product_entity_text WHERE attribute_id=(SELECT attribute_id FROM mag_eav_attribute WHERE attribute_code='meta_keyword')" ;
$rows       = $connection->fetchAll($sql);

$metaKeywords = $rows[0]['keywords'];

//strip white space and replace with _
$str = preg_replace('/\s+/', ' ',$metaKeywords);
//$str = str_replace(' ','*',$metaKeywords);

$arr = explode(" ", $str);
$arr = array_count_values($arr);
arsort($arr);

$i = 0;


foreach($arr as $data => $val)
{   
if($i<=30)
{

?>

<li style="margin:10px 6px 10px 0px; float:left!important; ">                                                   
<a href="<?php echo $this->getUrl('keywords/view/products/key/') ?><?php echo $data; ?>" style="color:#BE0171; text-decoration:none;">  <?php echo $data; ?>            
</a>                    
</li>

<?php

$i++;
}
else
{
break;
}
}

?>

</ul>

<?php endif; ?>             

</div>

XY

-x1-y1-x2-y2 -> すべてのキーワードがこのコードに表示されます。

しかし、上記の順序を実装する必要があります。

4

0 に答える 0