Atualmente, estou nos estágios alfa de editar um tema filho para um tema Wordpress. Eu tenho experiência em programação e alguma experiência em gerenciamento de wordpress, mas nenhuma experiência direta na edição de código relacionado ao wordpress. No momento, ele exibe as três primeiras categorias em ordem alfabética.
O que estou tentando fazer: em vez de exibir as três primeiras categorias em ordem alfabética, gostaria de exibir 3 categorias aleatórias com mais de x número de produtos.
Corri para os seguintes obstáculos / perguntas, impedindo-me de continuar.
- Que mecanismo / função controla a seleção dessas categorias? (TheirCode)
- É baseado em tema ou algo no sistema WordPress subjacente?
- Que outras informações seriam relevantes para fazer essa alteração?
- Quais informações seriam úteis na barra de navegação do Firefox?
- Como localizo "TheirCode" para substituí-lo por "MyCode"?
A verdadeira questão aqui é: Como encontro o "TheirCode", responsável por essa seleção, usando ferramentas como o Dev Bar do Firefox e a fonte real?
Esta pergunta não é sobre WooCommerce (o plugin). Estou procurando uma maneira de encontrar uma função em um tema que o WooCommerce (a empresa) projetou ou em qualquer tema realmente.
Tema Opensource: Loja WooCommerce
fonte
Respostas:
Se você está se referindo à saída / fonte HTML, por exemplo, no site oficial de demonstração do tema Storefront , clique com o botão direito do mouse no cabeçalho ou na seção "Categorias de produtos" e poderá inspecioná-lo facilmente
section
. Consulte o documento MDN para outras opções, como o ícone "Selecionar elemento".Agora, para a " fonte real " (ou seja, o código ou função PHP que gera a seção "Categorias de produtos" nas Páginas usando o modelo "Página inicial"), você pode encontrá-la
inc/storefront-template-functions.php
.Assim
storefront_product_categories()
é a função PHP que você está procurando e que você pode substituir completamente, se quiser (consulte https://docs.woocommerce.com/document/set-up-and-use-a-child-theme/# seção-5 ). Mas se você deseja exibir apenas as categorias de produtos na classificação aleatória, basta usar ostorefront_product_categories_args
para filtrar os argumentos da consulta (que seria o seu casoorderby
):Esse filtro é chamado de dentro da
storefront_product_categories()
função e essas são as outras ações / filtro que você pode usar:Filtro:
storefront_product_categories_shortcode_args
Açao:
storefront_homepage_before_product_categories
Açao:
storefront_homepage_after_product_categories_title
Açao:
storefront_homepage_after_product_categories
Veja isso se você não tiver certeza das diferenças entre uma "ação" e um "filtro".
ATUALIZAÇÃO: Como você pôde encontrar o código?
Navegue pela documentação do tema Storefront :
Homepage "ações"
Funções de modelo da montra
Veja o exemplo dos filtros da montra: altere o número de produtos exibidos por página .
Primeiro, verifique (e leia) a documentação do tema.
Se nenhum deles / ou você não encontrou / não conseguiu encontrar as informações necessárias, tente o que o @motivast havia sugerido - Inspecione os elementos na página, localize o código HTML e / ou CSS
class
/ apropriados eid
pesquise nos arquivos de tema HTML ou CSSclass
/id
até encontrar o arquivo ou código PHP correto /function
.Por exemplo, no site de demonstração do tema Storefront, o HTML da seção de categorias de produtos é:
Para pesquisar os arquivos de tema usando
umadestas palavras-chave: (começaria da correspondência mais específica ou mais próxima ao HTML gerado)<section class="storefront-product-section storefront-product-categories"
class="storefront-product-section storefront-product-categories"
storefront-product-categories
storefront-product-section
Supondo que você não soubesse da documentação do Storefront / tema, a realização das pesquisas acima acabaria levando você ao arquivo ou código PHP correto /
function
.Se precisar de mais assistência, entre em contato e atualizamos esta resposta.
fonte