Hoi allemaal

ik heb onderstaande code in mijn script staan, nou is het zo dat ik heeel veel keywords heb zeg maar en dit soort code nu ongeveer 1500 regels inneemt in mijn script..

ik bendus op zoek naar een simpelere code waarin ik de keywords in de database bijvoorbeeld zet en de nummers van de categorieen ook

of is er een andere oplossing ?

if (strpos($data['name'], 'Zweetdeken') OR strpos($data['name'], 'Zweetdeken')!== false) {
			$array = array("1", "5", "21");
			foreach($array as $cat){
			$this->db->query("INSERT INTO " . DB_PREFIX . "product_to_category SET product_id = '" . (int)$product_id . "', category_id = '" . $cat . "'");
			}
			echo "ik heb het volgend artikel toevoegd ". $data['name'] .", check je het even ?<br /> aan categorie " . $cat . " zweetdeken";

		} else {
			$data['category'] = '0';

		}


		if (strpos($data['name'], 'rok') OR strpos($data['name'], 'blouse') OR strpos($data['name'], 'Blouse') OR strpos($data['name'], 'jurk') OR strpos($data['name'], 'skirt') OR strpos($data['name'], 'dress') !== false) {
		
			$array = array("1", "2", "25");
			foreach($array as $cat){
			$this->db->query("INSERT INTO " . DB_PREFIX . "product_to_category SET product_id = '" . (int)$product_id . "', category_id = '" . $cat . "'");
			}
			echo "ik heb het volgend artikel toevoegd ". $data['name'] .", check je het even ?<br /> aan categorie " . $cat . " (110, 137)";
	
		} else {
			$data['category'] = '0';

		}


graag hoor ik jullie mening
Zou het eigenlijk niet veel logischer zijn dat je zelf alles eenmalig inregelt met keywords, en dat je dan in een aparte routine op een knop drukt die alle associaties in product_to_category weggooit
en opnieuw opbouwt met de zelf opgestelde regels?

Dit zou helemaal mooi zijn

De rest is allemaal geregeld. SEO woorden en in opencart.

Deze code werkt al anderhalf jaar goed. De import gaat ook perfect en de producten worden netjes gekoppeld. Dit draait op een live site perfect ik ben alleen de api een beetje aan het aanpassen en daarom kom ik dit soort dingen tegen die wellicht beter kunnen.

Maar ik kom geen stap verder zo door iedere keer mezelf maar te verdedigen. ????

Ik wil heel graag dat stukje voor de categorieën aanpassen want er werd hier geroepen dit kan veel beter en makkelijker. Laten we dan ook dat stukje aanpassen. In plaats van dat ik iedere keer moet uitleggen waar het voor is en wat ik wil bereiken enz.

Ik vindt jullie hulp echt super begrijp me niet verkeerd. Maar heb nog geen enkele beweging gezien richting een oplossing.
Michael vanDijk op 31/05/2020 08:13:29
verdedigen

Dit is niet echt een verdediging, maar meer een toelichting van jouw zijde om inzage te krijgen in hoe jouw aanpassingen ingrijpen in opencart, en hoe deze afwijken van het standaard gedrag, om zo een beeld te vormen van de huidige werking, zodat wij wijzigingen kunnen voorstellen die hetzelfde doen, maar dan op een makkelijkere manier.

Michael vanDijk op 31/05/2020 08:13:29
Ik wil heel graag dat stukje voor de categorieën aanpassen want er werd hier geroepen dit kan veel beter en makkelijker. Laten we dan ook dat stukje aanpassen. In plaats van dat ik iedere keer moet uitleggen waar het voor is en wat ik wil bereiken enz.

Slimme(re) oplossingen vragen ook om slimme(re) code. Je zult dus eerst na moeten denken over de werking, dan een ontwerp moeten opstellen, en dan pas gaan bouwen. Voordat we gaan rennen is het misschien handig om eerst te weten waar je naartoe rent?

Michael vanDijk op 31/05/2020 08:13:29
Ik vindt jullie hulp echt super begrijp me niet verkeerd. Maar heb nog geen enkele beweging gezien richting een oplossing.

Uhm, volgens mij heb ik in mijn vorige reactie een idee voorgesteld en ook een bijbehorende motivatie gegeven waarom ik het zo zou aanpakken? Je geeft in je reactie zelf aan dat dit "helemaal mooi zou zijn". Volgens mij zijn we al een heel eind? Je zult dus een soort module moeten bouwen voor het beheer van de sleutelwoorden, deze aan de categorieën kunnen ophangen en dan een soort van routine hebben die dan door je producten heenrent, specifieke informatie uitleest en deze matcht met de sleutelwoorden, en dan een koppeling maakt met de daaraan gelinkte categorieën. Mogelijk moet je daarbij nog onderscheid maken tussen categorieën die op deze manier zijn toegekend, en categorieën die je daar buitenom sowieso aan je product wilt hangen, zodat deze koppelingen niet verloren gaan op het moment dat je alle associaties "reset". Misschien niet helemaal netjes, maar de makkelijkste manier is wellicht een kolom toevoegen aan product_to_category (bijvoorbeeld een bools veld assigned_by_tag ofzo). Moet je wel opletten met upgrades en dergelijke dus dat zal je ergens in documentatie moeten zetten ofzo.

Maareh, met het bovenstaande heb je in wezen een complete blauwdruk voor een oplossing waarbij je het overzicht kunt houden via interfaces, in plaats van lopen te modderen in code waarbij dit tevens is ontkoppeld van je import.

Hoe is dit geen "beweging richting een oplossing"? Ik zal de eerste zijn die zal toegeven weinig tot geen verstand te hebben van opencart, dus als iemand anders een beter idee heeft, be my guest.

Of als je aan dit soort mijmeringen geen boodschap hebt, koop dan een extensie en kijk of dat soelaas biedt, en neem daarbij genoegen met het feit dat het mogelijk niet 100% past omdat het geen maatwerk is die precies aansluit bij de manier waarop jij jouw opencart site hebt ingericht.
ik zie op verschillende plaatsen in je code 21% BTW staan.

a) dat zou je al niet op moeten slaan: zonder BTW opslaan en dan later op het moment dat je het nodig hebt het juiste BTW percentage op los laten.

b) als je het al incl. btw wilt opslaan: zet dat buiten je code in een constante: vanaf dat ik op het VWO bij economie II te horen kreeg over BTW is het percentage al zeker 4 keer veranderd. Ik herinner me 18, 18.5 19 en 21%.
Dan wil je niet opnieuw door je code heen.

EN dat is dus ook een reden om je prijzen niet incl btw op te slaan.
Als Rutte morgen zegt dat de BTW naar 25% gaat, moet je niet heel je database door moeten gaan om alles aan te passen.
CONST BTWPERC = 25;
zou moeten voldoen.


--
en dit geldt vast ook wel voor meer constanten
Ivo P op 31/05/2020 13:31:47

ik zie op verschillende plaatsen in je code 21% BTW staan.

a) dat zou je al niet op moeten slaan: zonder BTW opslaan en dan later op het moment dat je het nodig hebt het juiste BTW percentage op los laten.

b) als je het al incl. btw wilt opslaan: zet dat buiten je code in een constante: vanaf dat ik op het VWO bij economie II te horen kreeg over BTW is het percentage al zeker 4 keer veranderd. Ik herinner me 18, 18.5 19 en 21%.
Dan wil je niet opnieuw door je code heen.

EN dat is dus ook een reden om je prijzen niet incl btw op te slaan.
Als Rutte morgen zegt dat de BTW naar 25% gaat, moet je niet heel je database door moeten gaan om alles aan te passen.
CONST BTWPERC = 25;
zou moeten voldoen.


--
en dit geldt vast ook wel voor meer constanten


dit is alleen om een mooie afgeronde prijs te krijgen aangezien alle prijzen allemaal rare prijzen zijn zoals 12.61 enz. dus nu wordt dit netjes afgerond en werkt perfect.



[size=xsmall]Toevoeging op 01/06/2020 08:25:52:[/size]

Thomas van den Heuvel op 31/05/2020 13:00:36

[quote="Michael vanDijk op 31/05/2020 08:13:29"]verdedigen

Dit is niet echt een verdediging, maar meer een toelichting van jouw zijde om inzage te krijgen in hoe jouw aanpassingen ingrijpen in opencart, en hoe deze afwijken van het standaard gedrag, om zo een beeld te vormen van de huidige werking, zodat wij wijzigingen kunnen voorstellen die hetzelfde doen, maar dan op een makkelijkere manier.

Michael vanDijk op 31/05/2020 08:13:29
Ik wil heel graag dat stukje voor de categorieën aanpassen want er werd hier geroepen dit kan veel beter en makkelijker. Laten we dan ook dat stukje aanpassen. In plaats van dat ik iedere keer moet uitleggen waar het voor is en wat ik wil bereiken enz.

Slimme(re) oplossingen vragen ook om slimme(re) code. Je zult dus eerst na moeten denken over de werking, dan een ontwerp moeten opstellen, en dan pas gaan bouwen. Voordat we gaan rennen is het misschien handig om eerst te weten waar je naartoe rent?

ik weet de werking en ik weet waar ik naar toe wil, alleen ik weet niet hoe ik dat kan realiseren en ik dacht dat hiervoor dit forum was.


Michael vanDijk op 31/05/2020 08:13:29
Ik vindt jullie hulp echt super begrijp me niet verkeerd. Maar heb nog geen enkele beweging gezien richting een oplossing.

Uhm, volgens mij heb ik in mijn vorige reactie een idee voorgesteld en ook een bijbehorende motivatie gegeven waarom ik het zo zou aanpakken? Je geeft in je reactie zelf aan dat dit "helemaal mooi zou zijn". Volgens mij zijn we al een heel eind? Je zult dus een soort module moeten bouwen voor het beheer van de sleutelwoorden, deze aan de categorieën kunnen ophangen en dan een soort van routine hebben die dan door je producten heenrent, specifieke informatie uitleest en deze matcht met de sleutelwoorden, en dan een koppeling maakt met de daaraan gelinkte categorieën. Mogelijk moet je daarbij nog onderscheid maken tussen categorieën die op deze manier zijn toegekend, en categorieën die je daar buitenom sowieso aan je product wilt hangen, zodat deze koppelingen niet verloren gaan op het moment dat je alle associaties "reset". Misschien niet helemaal netjes, maar de makkelijkste manier is wellicht een kolom toevoegen aan product_to_category (bijvoorbeeld een bools veld assigned_by_tag ofzo). Moet je wel opletten met upgrades en dergelijke dus dat zal je ergens in documentatie moeten zetten ofzo.
upgraden is geen probleem aangezien het twee aparte bestanden zijn los van opencart en ik deze zo kan plaatsen. mits ik het allemaal dus in mijn api bestanden houdt, daarom wil ik het dus op deze manier doen. alles werkt al alleen het is nu omslachtig

Maareh, met het bovenstaande heb je in wezen een complete blauwdruk voor een oplossing waarbij je het overzicht kunt houden via interfaces, in plaats van lopen te modderen in code waarbij dit tevens is ontkoppeld van je import.
het idee heb ik nu wel wat er moet gebeuren, probleem is alleen dat ik met de code niet uit kom.

Hoe is dit geen "beweging richting een oplossing"? Ik zal de eerste zijn die zal toegeven weinig tot geen verstand te hebben van opencart, dus als iemand anders een beter idee heeft, be my guest.

Of als je aan dit soort mijmeringen geen boodschap hebt, koop dan een extensie en kijk of dat soelaas biedt, en neem daarbij genoegen met het feit dat het mogelijk niet 100% past omdat het geen maatwerk is die precies aansluit bij de manier waarop jij jouw opencart site hebt ingericht.
[/quote]

er is geen extensie voor, en de api die nu draait werkt goed, ik wil alleen wat dingen toevoegen en aanpassen waarom zou ik naar iets anders toe gaan als wat er is goed is. maar misschien alleen wat beter kan.

>> dit is alleen om een mooie afgeronde prijs te krijgen aangezien alle prijzen allemaal rare prijzen zijn zoals 12.61 enz. dus nu wordt dit netjes afgerond en werkt perfect.

Ik zou de reactie van Ivo P nog een keer goed doorlezen, want wat hij zegt heeft helemaal niks te maken met 'mooie afgeronde prijzen'. Als niet duidelijk is wat hij bedoelt, vraag het dan gewoon. Het is namelijk wel een goede tip.
Ozzie PHP op 01/06/2020 15:07:05

>> dit is alleen om een mooie afgeronde prijs te krijgen aangezien alle prijzen allemaal rare prijzen zijn zoals 12.61 enz. dus nu wordt dit netjes afgerond en werkt perfect.

Ik zou de reactie van Ivo P nog een keer goed doorlezen, want wat hij zegt heeft helemaal niks te maken met 'mooie afgeronde prijzen'. Als niet duidelijk is wat hij bedoelt, vraag het dan gewoon. Het is namelijk wel een goede tip.


Ik snap wat er bedoelt wordt. Alleen is het een kleine moeite om in die twee bestanden de BTW ff aan te passen.

Ik wil eerst het andere oplossen. Dit soort dingen werkt gewoon goed en is voor nu perfect.

Jammer alleen dat ik met de echte uitdaging geen stap verder kom. En dat is de keywords makkelijker en overzichtelijk maken.
Michael vanDijk op 01/06/2020 08:19:12
er is geen extensie voor, en de api die nu draait werkt goed, ik wil alleen wat dingen toevoegen en aanpassen waarom zou ik naar iets anders toe gaan als wat er is goed is. maar misschien alleen wat beter kan.


Michael vanDijk op 01/06/2020 15:34:31
Ik snap wat er bedoelt wordt. Alleen is het een kleine moeite om in die twee bestanden de BTW ff aan te passen.

Ik wil eerst het andere oplossen. Dit soort dingen werkt gewoon goed en is voor nu perfect.

Jammer alleen dat ik met de echte uitdaging geen stap verder kom. En dat is de keywords makkelijker en overzichtelijk maken.


De enige reactie die ik hierop kan geven is:

Bruh.

Je wilt dingen veranderen, maar je wilt niets aanpassen. Is dat niet een beetje extreem paradoxaal? Je lijkt niet bereid om te doen wat noodzakelijk is. Alles wat een goed idee lijkt schuif je voor je uit. Je zou kunnen stellen dat dat exact de reden is dat je op dit punt bent belandt waarbij het tijd wordt om al die technical debt eens in te lossen.

The problem is not the problem, the problem is your attitude about the problem.
Michael vanDijk op 01/06/2020 15:34:31

Ik snap wat er bedoelt wordt. Alleen ...

Alleen doe je er niks mee?

Je moet het zelf weten hoor. Je snijdt alleen jezelf in je vingers door op deze manier te werk te gaan. Dan heb ik het nog niet over het feit dat je de prijs eerst met 21% manipuleert, en vervolgens opslaat in de database.

Anyhow, succes.

Reageren