Néhány trükk a Bitrix-ben az sql-en és a bash-en végzett munkában

Néhány trükk a Bitrix-ban az SQL és a BASH-1-ben végzett munkában

  • 03.03.17 11:42 •
  • parserme •
  • # 323152 •
  • Habrahabr •
  • 9 •
  • 1800

- ugyanaz, mint Forbes, csak jobb.

A Bitrix-ról írok a cserék, a Mysql és a Linux parancssorok összefüggésében.

A cikk olyan, meglehetősen magántulajdonú kérdésekkel foglalkozik, amelyek nem keletkeznek naponta. Természetesen, akkor használja ezeket az anyagokat a céljuknak, de a fő cél a cikk nem ebben. Kezdek nyissa meg a „fekete doboz” az úgynevezett „adatbázis szerkezete Bitrix”, és azt mutatják, hogy ez a tudás hasznos lehet növelni a tudásszintet mind a rendszer és az alapvető technológiák (SQL, linux shell), amely természetesen segít megoldani az új, komplex, érdekes, sokrétű feladatokat.

Az az oldal, ahonnan az SQL lekérdezéseket az adatbázisba vagy a mysql web bitrix kliensbe tehetjük, a Bitrix vezérlőpulton található a "Beállítások-> Eszközök-> SQL lekérdezés" útvonalon.

Természetesen kéréseket is tehet az operációs rendszer parancssorából, amelyhez egyszerűen kezelheted a login és a jelszó kibontását a Bitrix beállításokból:


- így a login és a jelszó a mysql bitrix adatbázishoz a linux parancssorból beilleszthető. Természetesen a módjait a saját helyettesítheti. A Bitrix virtuális gép által biztosított verzióban a DOCUMENT_ROOT úgy néz ki, mint a / home / bitrix / www /.

1. A Bitrix vezérlőpanelének összes felhasználóját egyszerre konfigurálja.


Új webhely bevezetésekor a fejlesztő nem akar elmagyarázni mindazoknak, akik új híreket adnak elő, vagy szerkesztik az oldalakat, amire szüksége van, hogy kattints a hír vagy a termékkatalógus eléréséhez. Jobb, ha a hivatkozásokat közvetlenül a Bitrix vezérlőpult kezdőlapjára mutatjuk be, különösen mivel a Bitrixben az adminisztrációs panel "asztali" erre a célra szolgál.

Ha az úgynevezett "asztal" beállításai kiterjeszthetők mindazokra, akik belépnek a Bitrix adminisztrációs területbe, akkor a "Kedvencek" oszlopot csak a felhasználó töltheti ki. Ez logikus, de általában a felhasználók figyelmen kívül hagyják ezt a lehetőséget, ezért ezt a munkát elvégezzük számukra.

Különben is, nem lehet mindent tenni a „Desktop” és a „Kedvencek” adhat, amit szeretne, akár egy linket egy harmadik fél forrás, mint például az e-mail vagy egyéb műszaki támogató szolgálat jegy rendszert.

Töltse ki a "Kedvencek" blokkot a Bitrix adminisztrációs területen minden olyan tartalomkezelő számára, amelyet a központ nem engedélyez: nincs ilyen gomb. Ezért először hozzá kell adnia a szükséges linkeket a "Kedvencek" blokkhoz.

Ismerje meg felhasználói azonosítóját. Ha admin (admin) van a kezelőpanelen, akkor a felhasználói azonosítója = 1.

Nyilvánvaló, hogy ezek az adatok a felhasználóhoz kapcsolódnak, és az első pillantás a b_user_-ről induló táblákba rohan, amelyek a Bitrix adatbázisban egy tucatnyiból származnak. Azonban a szükséges táblázatnak nincs ilyen előtagja és b_favorites.

Ez a tábla a COMMON mezőt tartalmazza, amely minden rekord esetében az "N" érték. Amint kiderül, a kiválasztott összes felhasználó megjelenítésének funkciója, és a b_favorites táblázat COMMON mezője teljesen indokolja a nevét.


Még nem kell megismételnünk a rendszergazda nyilvántartását minden felhasználó számára (és hogyan lehetne az új rendszergazdákkal a webhelyen.) A mysql trigger. Mostantól a Bitrix admin panel összes felhasználója ugyanazt a "Kedvencek" -ot látja, mint te. A probléma megoldódott.

2. Hogyan változtathatja meg a Bitrix felhasználó felhasználónevét és jelszavát az adatbázisban? A Bitrix rendszergazdai jelszó visszaállítása.


Ha nem tud belépni a Bitrix vezérlőpultba, de az adatbázis elérhető, beállíthatja saját jelszavát a felhasználó számára, vagy ugyanazt teheti meg, mint egy olyan másik felhasználó számára, akinek a jelszavát tudta.

Minden felhasználó mesteradatait a b_user táblában tárolja. Meg kell ismerned a felhasználói azonosítót a Bitrix rendszerben.

A saját Bitrix bejelentkezési és jelszó beállítása a MySQL használatával


A jelszót az adatbázisban tároljuk:

Azt mondják, megváltoztatták valami mást, de ha így tesz, akkor működni fog.


ahol
su - új felhasználói bejelentkezés
12345678 - só
hülye jelszó - új felhasználói jelszó
id = 8 - felhasználói azonosító (ha admin, majd = 1)
A jelszó bitrix visszaáll, a feladat megoldásra kerül. Ugyanakkor módosíthatja bejelentkezési nevét.


És a második, nagyon egyszerű módja annak, hogy visszaállítsuk a jelszót Bitrix-ben.

Ezúttal csak át kell adnunk a jelszó hashját egyik felhasználóról a másikra. Természetesen mindkét felhasználó azonosítóját meg kell ismerned a bitrixben, ebben az esetben az ID = 36 felhasználóval a felhasználó ID = 895 jelszavát állítjuk be.

3. Alkalmazza a margó beállítását az összes felhasználó Bitrix adminisztrációs területének sorrendjében.


Egy bizonyos területen a második szintű domain, a helyszínen a közigazgatási központ Bitrix rendszer a szerkesztési oldalon order online áruház az a táblázat fejlécében, ahol az árut beállítások gombra formájában fogaskerekek, és a gomb, majd kék, majd szürke ...

A gombra kattintva meghatározhatja a táblázatban megjelenített rendelési mezőket, beleértve az egyedi rendelési tulajdonságokat is. De ugyanakkor ez csak egy felhasználó számára van beállítva.

Ezeket a beállításokat a Bitrix vezérlőpult minden felhasználójára alkalmazni kell, és nem mindenkinek meg kell magyarázni ", kattintson az asztal fejlécében lévő kis gombra a termékekkel, lásd a tulajdonságok listáját ... Válassza ki a kívántakat. ", Állítsa be a beállításokat az adatbázisban.

Ezek a beállítások a b_user_option táblában kerülnek tárolásra, amelyeket egy felhasználónak a user_id mezőn keresztül leképez. De van egy sajátosság: ha user_id = 0, akkor az ingatlan globális, és minden felhasználóra érvényes.


ahol user_id = 1 a felhasználói azonosító, amellyel a terméktáblát állítja be. Ha ez az admin, akkor ID = 1.

A feladat megoldásra kerül: Most a terméktáblázat beállításai egyszerre működnek.

4. Sorolja be a keresési eredményeket a bitrix a saját algoritmus.


Ha keres egy webhelyet, akkor a bitmező keresési moduljainak fő táblája a b_search_content.

Érdekes mezők a b_search_content táblában:

custom_rank - az a mező, amellyel a rendezés minden más mező előtt működik
param1 - információs blokk kód
param2 - az információs blokk száma
module_id - = 'iblock'
Elem vagy szakasz item_id - id
- információs blokkok kereséséhez.

Először is érdekel a custom_rank mező.

Ha a korábbi esetekben a Bitrix rendelkezésre bocsátott, de nem realizált képességeit alkalmaztuk, akkor a vezérlőpanelen erre a mezőre speciális "ellenőrzés" van. De minden elemhez külön van beállítva, és általában ezt a funkciót nem használják.

Ez a mező számszerűen alakul ki, ezért saját mérlegelésünk szerint töltjük ki saját szabályainkat a keresési eredmények rendezéséhez. Alapértelmezés szerint minden elem esetében az értéke nulla.

Az én esetemben, amikor keresi elemeket a katalógus online áruház végrehajtott döntés Fejlesztő romza, szükséges volt az első, hogy megjelenítse azokat a termékeket, amelyek valamilyen különleges pipa lett beállítva, ami a „vagyon”, jelenlétének megfelelő az áruk egy adott értékesítési pont. Repül ez az egész a járulékos terhelése 1C, így az SQL lekérdezés felakasztották végén az esemény csere 1C.


Az információs blokk konfigurációjában meg kell adnia a "A tulajdonságértékek tárolása: a megosztott táblázatban (alapértelmezés szerint)", és nem egy külön táblázatban, ellenkező esetben a lekérdezés kissé eltér.

Most annak a ténynek köszönhető, hogy a kérelem megy először b_iblock_element_property asztalra, nem b_iblock_element, amely az elsődleges tároló elemek az információs blokkok, akkor válassza csak azokat az elemeket, amelyek a kívánt tulajdonsága van, és ha ez egyenlő a kívánt értéket, majd emelkedik custom_rank különben ez nullázódik.

Az én esetemben a probléma megoldódott, és számodra teljes lehetősége van saját logikájának végrehajtására a keresési eredmények rendezéséhez. És ha nem ismered meg teljesen ezeket az asztalneveket, akkor a következő cikkben részletesen ismertetem a céljukat.

A gyorsítótár gyors törlése a Bitrix-ban.


"És a footer.php": A központban a gyorsítótárban lévő bitrix törlése nagyon lassú. Valójában csak törli a fájlokat bizonyos könyvtárakban, csak lassú eszközökkel. Készítsen egy speciális fájlt a lache parancssori bitrixben lévő gyorsítótár takarítására.


Most futtathatod a ./clearcache.sh fájlt, és a Bitrix gyorsítótár majdnem azonnal törlődik.

A szkriptnek egy könyvtárnak kell lennie, mint a webhely DOCUMENT_ROOT. Habár mind a helyét, mind a kódot megváltoztathatja, a lényeg az, hogy törölni kell minden fájlt a könyvtárakból:

cache
managed_cache
stack_cache - korábban is volt ez a könyvtár, de az utolsó verziókban nem nézem, így most nélkülem.

Valójában, ha maguk törlik a könyvtárakat, semmi sem fog megtörténni, akkor újra létrehozásra kerülnek. De helyesebb hagyni őket.

Egy Bitmax virtuális gépen a DOCUMENT_ROOT megegyezik a / home / bitrix / www / fájlokkal, ha egy webhely másik könyvtárba van telepítve, a szkriptet az útvonalaihoz igazítva korrigálja.

Segíthet és pénzt küldhet a fejlesztéshez

Kapcsolódó cikkek