GVKun编程网logo

php – 在Magento中获取所有类别的数组(php获取数组元素个数)

11

针对php–在Magento中获取所有类别的数组和php获取数组元素个数这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展360Magento教你在magento中如何添加图片水印、Larav

针对php – 在Magento中获取所有类别的数组php获取数组元素个数这两个问题,本篇文章进行了详细的解答,同时本文还将给你拓展360Magento教你在magento中如何添加图片水印、Laravel ownsToMany - 获取所有类别的父级、Magento 2.3按客户在所有类别中每页设置项目、magento获取所有分类列表等相关知识,希望可以帮助到你。

本文目录一览:

php – 在Magento中获取所有类别的数组(php获取数组元素个数)

php – 在Magento中获取所有类别的数组(php获取数组元素个数)

我希望能够通过API调用以获取所有类别的数组,其中包含URL键等详细信息.最终的目标将是这样的阵列
$massage_cats=array(
    array("entity_id"=>78,"name"=>"Massage Oils and Tools","url_key"=>"massage-oils-and-tools","url_path"=>"essential-accessories/massage-oils-and-tools.html"),array("entity_id"=>79,"name"=>"Massage Oils","url_key"=>"massage-oils","url_path"=>"essential-accessories/massage-oils-and-tools/massage-oils.html")
);

所以我想说出类似的东西

$massage_cats= array();
$allcats = Mage::getModel('catalog/cats?')->loadAll();
    foreach($allcats $k=>$item){
        array_push($massage_cats,$item->loadDetails());
    }

我知道这完全是弥补而不是真正的API,但这基本上是目标.我确实需要输出.关于代码实现需求的想法?

这将获得您的价值观.你可以从这里建立你的阵列.
$categories = Mage::getModel('catalog/category')->getCollection()
->addAttributetoSelect('id')
->addAttributetoSelect('name')
->addAttributetoSelect('url_key')
->addAttributetoSelect('url')
->addAttributetoSelect('is_active');

foreach ($categories as $category)
{
    if ($category->getIsActive()) { // Only pull Active categories
        $entity_id = $category->getId();
        $name = $category->getName();
        $url_key = $category->getUrlKey();
        $url_path = $category->getUrl();
    }
}

编辑

我在MagentoCommerce.com的帖子中对此进行了调整.您可以使用此代码:

$category = Mage::getModel('catalog/category');
$tree = $category->getTreeModel();
$tree->load();
$ids = $tree->getCollection()->getAllIds();
if ($ids){
    foreach ($ids as $id){
        $cat = Mage::getModel('catalog/category');
        $cat->load($id);

        $entity_id = $cat->getId();
        $name = $cat->getName();
        $url_key = $cat->getUrlKey();
        $url_path = $cat->getUrlPath();
    }
}

360Magento教你在magento中如何添加图片水印

360Magento教你在magento中如何添加图片水印

magento 如何添加图片水印
具体操作:

首先进入后台system/configuration/design->products imagewatermarks

将这个页面的信息填上就ok了。

Base image watermark defaultsize:表示基本的图片水印默认大小

Base image watermark opacitypercent:表示基本图片水印的透明度,是以百分比填写

Base image watermark:表示基本图片水印,

Base image watermark position表示基本图片水印显示的位置

Small image watermark defaultsize表示最小图片水印默认大小

Small image watermark opacitypercent表示最小图片水印的透明度,是以百分比填写

Small image watermark:表示最小图片水印,

Thumbnail image watermarkposition表示缩略图片水印显示的位置

Thumbnail image watermark defaultsize表示缩略图片水印默认大小

Thumbnail image watermark opacitypercent表示缩略图片水印的透明度,是以百分比填写

magento建站:www.360magento.net

Thumbnail image watermark:表示缩略图片水印,

Thumbnail image watermarkposition表示缩略图片水印显示的位置

当以上信息填完时,记得去magento\media\catalog\product\cache目录下的文件删除和刷新缓存


Laravel ownsToMany - 获取所有类别的父级

Laravel ownsToMany - 获取所有类别的父级

如何解决Laravel ownsToMany - 获取所有类别的父级?

我英语说得不好。我很抱歉。 我想要做的是,获取所有附加了 ID 为 5 的类别的类别

错误编辑在哪里?

数据库:

Database ScreenShot

分类.PHP

class Categories extends Model
{
    use HasFactory;
    protected $fillable = [
        ''name'',''parent_id'',''slug'',''title'',''description''
    ];

    public function parentCategories(){
        return $this->belongsToMany(Categories::class);
    }
}

控制器

public function AddDetail(AdvertAddDetail $request){
    $selected = Categories::find($request->select);
    print_r($selected->parentCategories());
}

解决方法

你需要写如下栏,

return $this->belongsToMany(Categories::class,''parent_id'');

Magento 2.3按客户在所有类别中每页设置项目

Magento 2.3按客户在所有类别中每页设置项目

如何解决Magento 2.3按客户在所有类别中每页设置项目?

我正在尝试将每页商品的值(当客户更改时)保存在cookie中,以将该值用于所有产品列表页。我使用了围绕GetLimit()(Magento \ Catalog \ Block \ Product \ ProductList \ Toolbar)的插件方法来管理cookie,但是它无法正常工作。有时cookie没有设置,有时没有更新值。

$publicCookieMetadata = $this->_cookieMetadataFactory->createPublicCookieMetadata();
$publicCookieMetadata->setDurationOneYear();
$publicCookieMetadata->setPath(''/'');
$publicCookieMetadata->setHttpOnly(false);

return $this->_cookieManager->setPublicCookie(
        ''dsdd'',$value,$publicCookieMetadata
 );

如果我关闭了full_page缓存,则一切正常。但是启用FPC后,cookie无法正常工作。

请让我知道如何解决。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

magento获取所有分类列表

magento获取所有分类列表

1.显示所有的Magento分类列表(Active/Inactive)

下面的代码将获取在你的magento商店里面的所有分类:

$categories = Mage::getModel(''catalog/category'')->getCollection()->addAttributeToSelect(''*'');

2. 显示所有激活的分类( Active Categories)

下面的代码将获取你的magento商店里的所有激活的分类,过滤掉没有激活的分类

$categories = Mage::getModel(''catalog/category'') ->getCollection() ->addAttributeToSelect(''*'') ->addIsActiveFilter();

3. 在magento中显示任意级别的并且是激活状态下的分类

下面代码将获取所有特定级别的激活分类,在这里我选择了一级分类,并按照分类的name排序

$categories = Mage::getModel(''catalog/category'') ->getCollection() ->addAttributeToSelect(''*'') ->addIsActiveFilter() ->addLevelFilter(1) ->addOrderField(''name'');

4. 在magento中显示特定分类存储类型

下面的代码将获取所有激活的的存储特定分类

getStoreCategories($sorted=false, $asCollection=false, $toLoad=true) 
$helper = Mage::helper(''catalog/category''); 

// sorted by name, fetched as collection 
$categoriesCollection = $helper->getStoreCategories(''name'', true, false); 

// sorted by name, fetched as array 
$categoriesArray = $helper->getStoreCategories(''name'', false, false);

5. 在magento中只显示顶级分类

下面的代码将获取所有magento顶级分类

<?php $_helper = Mage::helper(''catalog/category'') ?> 
<?php $_categories = $_helper->getStoreCategories() ?> 
<?php if (count($_categories) > 0): ?> 
<ul> 
<?php foreach($_categories as $_category): ?> 
<li> 
<a href="getCategoryUrl($_category) ?>"> 
<?php echo $_category->getName() ?> 
</a> 
</li> 
<?php endforeach; ?> 
</ul> 
<?php endif; ?>

6. 在magento中显示所有顶级分类及其所有子分类

下面的代码将获取所有的magento商店中顶级分类以及所有子分类

<?php $_helper = Mage::helper(''catalog/category'') ?>
<?php $_categories = $_helper->getStoreCategories() ?>
<?php $currentCategory = Mage::registry(''current_category'') ?>
<?php if (count($_categories) > 0): ?>
<ul>
<?php foreach($_categories as $_category): ?>
<li>
<a href="<?php echo $_helper->getCategoryUrl($_category) ?>">
<?php echo $_category->getName() ?> //Top Level Category Listing
</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>
<a href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>"> //Sub Category Listing
<?php echo $_subcategory->getName() ?>
</a>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>

7. 在magento中显示当前顶级分类的子分类

下面的代码将获取当前顶级分类的所有子分类

<?php $_currentCategory = Mage::register(''current_category'') ?>
<?php $_helper = Mage::helper(''catalog/category'') ?>
<?php $_categories = $_helper->getStoreCategories() ?>
<?php if (count($_categories) > 0): ?>
<ul>
<?php foreach($_categories as $_category): ?>
<li>
<a href="<?php echo $_helper->getCategoryUrl($_category) ?>" title="<?php echo $_category->getName() ?>">
<?php echo $_category->getName() ?>
</a>
<?php if ($_category->getId() == $_currentCategory->getId()): ?>
<?php $_subcategories = $_currentCategories->getChildrenCategories() ?>
<?php if (count($_subcategories) > 0): ?>
<ul>
<?php foreach($_subcategories as $_subcategory): ?>
<li>
<a href="<?php echo $_helper->getCategoryUrl($_subcategory) ?>" title="<?php echo $_subcategory->getName() ?>">
<?php echo $_subcategory->getName() ?>
</a>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
<?php endif; ?>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>

8. 获取类目树

下面的代码将返回一段类目树的html代码

$catalogHtml = Mage::getModel("newaddproducts/newaddproducts")->getTreeCategories(''2'', false);

 

希望对你有帮助,Thanks

关于php – 在Magento中获取所有类别的数组php获取数组元素个数的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于360Magento教你在magento中如何添加图片水印、Laravel ownsToMany - 获取所有类别的父级、Magento 2.3按客户在所有类别中每页设置项目、magento获取所有分类列表等相关内容,可以在本站寻找。

本文标签: