forum.coppermine-gallery.net

Support => Русский (Russian) => Language Specific Support => cpg1.5.x FAQ (Russian) => Topic started by: Gostemilov on May 20, 2011, 01:57:44 pm

Title: Изменение словаря keywords для работы с ...
Post by: Gostemilov on May 20, 2011, 01:57:44 pm
Изменение словаря keywords для работы с перекрестными альбомами

Что требуется:

В галерее применены перекрестные альбомы (точнее, будут применены, сейчас идет отладка).

Для размещения изображения, загруженного в личный альбом, в публичных альбомах юзер дожен указать тег, содержащийся в свйоствах альбома. Но он его не знает ( а откуда, собственно?)

Можно сделать теги альбомов идентичными названиям. Но это не вполне верно, имхо.

Что требуется: при выполнении пересборки словаря вставлять в него НЕ теги, присвоенные юзерами изображениям, а теги, присвоенные АЛЬБОМАМ. Тогда процесс размещения в перекрестных альбомах будет простым и приятным: юзер грузит изображение, из списка кейвордов выбирает, в каких публичных альбомах разместить изображение, от балды добавляет несколько своих тегов применительно именно к этому изображению и... И все довольны и все хорошо.

Вопрос: КАК?
Title: Re: Изменение словаря keywords для работы с перекрес
Post by: Gostemilov on May 20, 2011, 02:57:48 pm
Code: [Select]

$query = "SELECT keyword FROM `cpg15x_albums` WHERE keyword <> ''";
$result = cpg_db_query($query);
$i = 0;
if (mysql_num_rows($result)) {

    if ($output) { starttable('100%', $lang_gallery_admin_menu['key_lnk']); }

    cpg_db_query("TRUNCATE TABLE {$CONFIG['TABLE_DICT']}");
    while ($row = mysql_fetch_assoc($result)) {
        $keyArr = explode($CONFIG['keyword_separator'], $row['keyword']);
        foreach ($keyArr as $keyword) {
            $keyword = trim($keyword);
            if (empty($keyword)) {
                continue;
            }
            $query = "SELECT null FROM {$CONFIG['TABLE_DICT']} WHERE keyword = '$keyword'";
            $result2 = cpg_db_query($query);
            if (!mysql_num_rows($result2)) {
                $query = "INSERT INTO {$CONFIG['TABLE_DICT']} (keyword) VALUES ('$keyword')";
                cpg_db_query($query);
                if ($output) { echo '<tr><td class="tableh2">' . $keyword . '</td></tr>'; }
                $i++ ;
            }
        }

наверняка можно префикс таблицы откуда-то воткнуть в виде переменной, но я даже затеваться не стал с эти, и так работает.

Оффтоп - тут вообще форум или так, место куда зашел,задал вопрос, через недельку зашел, сам себе ответил и ушел довольный?
Title: Re: Изменение словаря keywords для работы с перекрес
Post by: Alex Revo on May 21, 2011, 10:55:36 am
Тут форум, но на нем много вопросов в основном от новичков, поэтому найти решение не всегда просто.
Title: Re: Изменение словаря keywords для работы с перекрес
Post by: Gostemilov on May 22, 2011, 07:30:25 pm
Так ведь и я не гуру, но за пару дней заточил галерею под себя напильником? вопрос в желании что-то сделать, а не в стаже.

В общем, пользователи очень довольны тем, что не надо вбивать все вручную, пара-тройка кликов - и изображение размещено в нужных альбомах.

Это, кстати, большой плюс Coppermine, у других галерей, которыми я пользовался, подобного функционала нет

К сожалению, реализация многого сделана настолько через зад, что просто оторопь берет, но ничего, вроде справился.