Tengo un componente de terceros que almacena sus categorías en la #__categories
tabla.
-----+----------------+-----------------------+-----------------------+-----
... | extension | title | alias | ...
-----+----------------+-----------------------+-----------------------+-----
... | com_content | Uncategorised | uncategorised | ...
-----+----------------+-----------------------+-----------------------+-----
... | com_banners | Sample Data-Banners | sample-data-banners | ...
-----+----------------+-----------------------+-----------------------+-----
... | com_newsfeeds | Sample Data-Newsfeeds | sample-data-newsfeeds | ...
-----+----------------+-----------------------+-----------------------+-----
... | com_contact | Sample Data-Contact | sample-data-contact | ...
-----+----------------+-----------------------+-----------------------+-----
... | com_content | Joomla! | joomla | ...
-----+----------------+-----------------------+-----------------------+-----
... | com_thirdparty | ThirdParty Category | thridparty-category | ...
-----+----------------+-----------------------+-----------------------+-----
... | ... | ... | ... | ...
-----+----------------+-----------------------+-----------------------+-----
Puedo imprimir categorías desde com_banners
o desde otros componentes principales como se muestra a continuación,
$categories = JCategories::getInstance('Banners');
$subCategories = $categories->get()->getChildren(true);
print_r($subCategories);
Pero se nota
" Error fatal : la clase 'ThirdPartyCategories' no se encuentra en ... \ bibliotecas \ legacy \ categories \ categories.php en la línea 152"
al intentar imprimir las categorías de otra extensión como se muestra a continuación,
$categories = JCategories::getInstance('ThirdParty');
$subCategories = $categories->get()->getChildren(true);
print_r($subCategories);
¿Qué tengo que hacer con las categorías heredadas en las bibliotecas de Joomla?
Nota: El nombre
ThirdParty
es solo un marcador de posición, podría ser el nombre de cualquier extensión de terceros.
joomla-3.x
extensions
category
subcategories
kolunar
fuente
fuente
ThirdParty
el nombre real del componente?Respuestas:
Después de investigar un poco, resulta que el componente de terceros que estoy usando no tiene un archivo creado como
..\components\com_thirdparty\helpers\category.php
se requiere para implementar una claseThirdPartyCategories
que se extiendeJCategories
en el directorio de ayuda del componente como se describe a continuaciónfuente