-
Data: 2011-09-08 11:12:48
Temat: Re: Wordpress, dwie bazy i unikalny ID post-a
Od: Peter May <p...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 07-09-2011 22:02, porneL pisze:
> On Wed, 07 Sep 2011 10:17:39 +0100, Peter May <p...@o...pl> wrote:
>
>> Któregoś dnia klientowi dawno temu postawiłem WP i zachciało się
>> wielojęzyczności. W WP nie było i nadal nie jest to proste, więc
>> wówczas utworzyłem dwie bazy danych. Przełączanie między językami
>> zrobiłem prosto poprzez zwykłe przełączanie między bazami danych.
>>
>> Jednak problem zaczął się wtedy, gdy napisałem plugin, którego wynik
>> jest zależny od zawartości konkretnych postów. No i zrobił się
>> problem, bo posty można było tworzyć o tej samej treści dowolnie, ale
>> gdy klient "mieszał" w WP, to w każdej bazie ID-ki postów rozjechały się.
>
> Wartość następnego ID dla auto_increment da się odczytać i ustawić (w
> MySQL to ALTER TABLE xxx AUTO_INCREMENT=xxx), więc możesz zrobić proste
> "api", które będzie kopiowało największy ID między serwerami (dorzuć
> request byle gdzie w kodzie przed zapisaniem posta).
Request nie będzie potrzebny, bo obie bazy są na tym samym serwerze. A z
tym api to właśnie tą drogą chcę pójść. Zastanawiam się czy nie lepiej
będzie jak WP utworzy wpis, ja sprawdzę czy w drugiej bazie jest wolny
taki sam ID i wówczas "sklonować" wpis w drugiej bazie. W przypadku
konfliktu ID-ków wpisów nowo utworzony musiałbym kasować lub zmieniać mu
na takie ID, by były oba zgodne z obu bazach.
> ...ale dużo sensowniejszym rozwiązaniem było by nadawanie jakiegoś
> bardziej ludzkiego i kontrolowanego identyfikatora postom, np. taki sam
> tag, slug/URL czy własna specjalna kolumna.
Raczej nie. Dlatego, że user nie zapanuje nad slug-ami, tagami, itp. A
pilnowanie, by posty miały te same ID-ki daje 100% gwarancji.
--
Peter
Następne wpisy z tego wątku
- 08.09.11 11:21 Peter May
Najnowsze wątki z tej grupy
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Do sądu trafił pozew zbiorowy przeciw Google'owi - oskarżenie o praktyki monopolistyczne na rynku reklamy internetowej
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
Najnowsze wątki
- 2025-05-03 gazowe kuchnie są znacznie bardziej szkodliwe dla zdrowia, niż dotychczas sądzono
- 2025-05-03 Czyli jednak elektryki są TANIE i powszechnie dostępne dla obywateli
- 2025-05-03 Elektryki do Morskiego Oka do utylizacji
- 2025-05-03 Crash testy na publicznej drodze - 4 BMW zderzone
- 2025-05-03 pojebane Google
- 2025-05-03 Brednie w wiki - hasło Dehomag
- 2025-05-03 gazowe kuchnie są znacznie bardziej szkodliwe dla zdrowia, niż dotychczas sądzono
- 2025-05-03 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-05-03 Gdańsk => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-05-03 Warszawa => Frontend Developer (Angular13+) <=
- 2025-05-02 Gliwice => Business Development Manager - Network and Network Security
- 2025-05-02 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-05-02 Polska => Senior Key Account Manager <=
- 2025-05-02 Warszawa => Senior Programmer C <=
- 2025-05-02 Gdańsk => Team Lead Data Engineer (Snowflake) <=