Un utente ha chiesto
Categoria: JC Submenu di WordPress
Domanda: Menu categorie di prodotti Woocommerce

Ho appena passato un sacco di tempo a capirlo e volevo condividerlo! Di recente ho aggiornato da WordPress 4.7.xa 5.2.3 e da WooCommerce 2.6.5 a 3.7.0. Sottomenu JC utilizzato per popolare automaticamente il mio menu con le categorie di prodotti, di cui esistono molte categorie. È estremamente noioso aggiungere manualmente TUTTE queste categorie a un menu. Quindi JC Submenu era perfetto. E ha visualizzato l’ordine delle categorie e delle sottocategorie in base a come sono state definite nella sezione delle categorie di prodotti dell’amministratore, in base al loro ordine. Quando si aggiornava WordPress e WooCommerce, non era più così.

Quindi, se vuoi che funzioni di nuovo, ecco le modifiche all’hardware del mio plugin. Se qualcuno sa come applicare tutte queste modifiche tramite filtri o azioni, risponda. Non mi conosco molto bene.

Nel file jc-submenu / SubmenuModel.php intorno alla riga 22, aggiungi ‘term_order’ => ‘Term Order’,

	private static $order_options = array(
		'tax' => array(
			'name' => 'Name',
			'slug' => ' Slug',
			'count' => 'Tax Count',
			'term_order' => 'Term Order', //DIRTCHEAPRC
			'id' => 'ID',
			'none' => 'None',
		),

Questo aggiunge Term Order come opzione nella sezione del menu.

Nel file jc-submenu / walkers / SubmenuWalker.php intorno alla riga 811, commenta la variabile $ term_query come di seguito.

		/* DIRTCHEAPRC $term_query = array(
			'hide_empty' => $hide,
			'orderby' => $orderby,
			'order' => $order,
			// 'exclude' => $exclude,
			'exclude_tree' => $exclude,
			'child_of' => $tax_term
		); */

Quindi aggiungere il seguente codice di seguito:

		//+ DIRTCHEAPRC - Allows us to sort by term_order
		if ( $orderby == 'term_order' ) {
			$term_query = array(
				'taxonomy' => $taxonomy,
				'hide_empty' => $hide,
				'order' => $order,
				'meta_key'   => 'order',
				'orderby'    => 'meta_value_num',
				'exclude_tree' => $exclude,
				'child_of' => $tax_term
			);
		}
		else {
			$term_query = array(
				'taxonomy' => $taxonomy,
				'hide_empty' => $hide,
				'orderby' => $orderby,
				'order' => $order,
				'exclude_tree' => $exclude,
				'child_of' => $tax_term
			);
		}
		//- DIRTCHEAPRC

E infine, verso la riga 849 ora, commenta e sostituisci la richiesta get_terms


		//DIRTCHEAPRC $terms = get_terms( $taxonomy, $term_query ); - WP now wants taxonomy as part of the arguments array
		$terms = get_terms( $term_query );

Lo ha fatto per me Spero che questo possa aiutare qualcuno a iniziare!

  • (@shallway)

    @dirtcheaprc Sono sul tema Astra, ho apportato le modifiche, non funziona ancora

    (@dirtcheaprc)

    Non ho familiarità con il tema Astra e non sono necessariamente qualcuno che offre un grande supporto 🙂 Detto questo, ecco i miei pensieri.

    1) Dopo aver apportato le modifiche hardware al plug-in, è necessario andare su Aspetto> Menu. Scegli il menu che vuoi modificare. Fare clic sulla “freccia giù” su una voce di menu per espanderla. Attendi il caricamento del sottomenu JC. Nel menu a discesa “Ordine”, scegli l’ordine dei futures.

    2) Se il menu generato è effettivamente ordinato in base ai termini, come hai configurato nel backend del tuo pannello di amministrazione, il tuo problema è molto probabilmente un problema di formattazione. Ho avuto molti problemi con immagini di sfondo, classi CSS errate, ecc. Quindi ho dovuto usare i filtri per applicare le classi CSS giuste ai menu generati dal plugin. Ho anche dovuto usare i CSS per personalizzare ulteriormente.

Hai risolto il tuo problema?

0 / 0

Lascia un commento 0

Il tuo indirizzo email non sarà pubblicato. Required fields are marked *