на сайте используется плагин IMM-Glossary
но работает с русскими терминами не аккуратно. Например задав определение для слова "факт" он выделяет этот термин как в словах "ФАКТы" так и в слове "ФАКТический".
Есть, конечно, идея для слов, которые есть в глоссарии в скобке задавать английский перевод и уже это слово будет вести в глоссарий. Но хотелось бы попробовать что-нить более эффективное и менее трудоёмкое.
13.10.2008 13:41
Ответить
0
С русским "менее трудоемкое" – это только бросить нафиг 🙂
Так может надо малость подправить плагин? Не смотрели, как он устроен? Берет начало слова?
вот линк:
http://www.internetmarketingmonitor.com/wp-content/uploads/IMM-Glossary.zip
вот описание:
http://www.internetmarketingmonitor.org/word-press-plugins/imm-glossary-wordpress-plugin/
21.10.2008 10:53
Ответить
0
При помощи молотка, зубила и какой-то матери уговорил плагин работать с русским.
Vitality_obn, объясните, чего Вы от него хотите? Надеюсь, Вы догадываетесь, что морфологический анализ каждого слова в записи может занять очень много времени.
При помощи молотка, зубила и какой-то матери уговорил плагин работать с русским.
Vitality_obn, объясните, чего Вы от него хотите? Надеюсь, Вы догадываетесь, что морфологический анализ каждого слова в записи может занять очень много времени.
очень много времени это сколько?
хочется, чтобы глоссарий делал ссылки на слова, которые в нём забиваются. если забито слово "факт", то он чтобы в посте получали ссылки в глоссарий слова "факт, фактом, факты и прочее", а слова, например, "фактический" не затрагивались.
21.10.2008 12:09
Ответить
0
Чтобы отличить "фактами" от "фактический" в плагине нужно сделать строгий поиск (это не очень сложно). Но тогда нужно проверять все формы слова. В общем случае существительное имеет до 12 словоформ. Значит, время работы увеличится в 12 раз. Плюс время поиска форм слова по словарю. "Велик могучим русский языка!" (с)Александр Иванов.
Чтобы отличить "фактами" от "фактический" в плагине нужно сделать строгий поиск (это не очень сложно). Но тогда нужно проверять все формы слова. В общем случае существительное имеет до 12 словоформ. Значит, время работы увеличится в 12 раз. Плюс время поиска форм слова по словарю. "Велик могучим русский языка!" (с)Александр Иванов.
ссылки разве генерируются не один раз при добавлении нового слова в глоссарий? или плагин постоянно работает и постоянно проверяет весь сайт?
а по поводу проверять все формы слова. нельзя разве сделать для поиска слова такую формулу: подсчитать кол-во букв (симоволов), в том числе и пробелы (если это словосочитание) и прибавить к нему 2 буквы. тем самым мы получаем, что будет искаться слово "факт" и ещё его склонения. А вот другие слова, имеющие посредственное отношение к слову будут исключены?
или это будет сложно реализовать?
21.10.2008 12:36
Ответить
0
Ссылки генерируются при выводе поста на сайт.
"+2 буквы" дадут ложняков немеряно. Не все слова такие простые, как "факт".
по поводу "+2 буквы" согласен, будет много лишнего.
Тогда если говорить о времени, то сколько это будет в секундах/минутах? Если строго прописать несколько словоформ.
21.10.2008 13:06
Ответить
0
Это зависит от сервера, его загрузки, размера постов, количества слов… С уверенностью можно сказать только одно – не более max_execution_time из php.ini 😉
разве ссылки генерируются не тогда, когда добавляешь новое слово в глоссарий? ведь если я поменял какое-то слово, или добавил новое, то только в этом случае будет запускаться плагин для создания ссылок и проверка по всему сайту.
но раз другого варианта не прослеживается для жесткого поиска в глоссарии, то может быть Вы подскажите куда в .php добавлять более жёсткие критерии для поиска?
или есть на примете другой способ по созданию глоссария?
Была идея по использованию плагина "псевдокод", дабы заменить необходимые русские слова и их производные на слова с переводом: "факт" -> "факт (fact)"
но почему-то со словами плагин отказался работать.
21.10.2008 13:42
Ответить
0
[quote=Ю.Б.]Ссылки генерируются при выводе поста на сайт.
разве ссылки генерируются не тогда, когда добавляешь новое слово в глоссарий?[/quote]
Не собираюсь с Вами спорить.
запустил плагин в локальной версии, но появилась ошибка при входе на страничку глоссария:
"Query: SELECT * FROM `wp_IMM-Glossary` ORDER BY `Title` ASC LIMIT -5 , 5Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘-5 , 5’ at line 1"
что необходимо поправить? заранее спасибо.
22.10.2008 19:35
Ответить
0
А кто его знает! У меня такой беды не было. В плагине таким матюком работа с базой написана, что без пол-литры не поймешь. Но по любому, LIMIT -5 – это бред.
Ю.Б. Вы говорили, что запустили плагин тоже не без труда. какие у Вас были трудности? и как мне можно попробовать обойти эту ошибку с базой данных?
23.10.2008 07:33
Ответить
0
В редакторе словаря портились буквы, вылечил заменой htmlentities на htmlspecialchar.
А на какую именно страницу ругается: в управлении или в настройках? Если в управлении, то попробуйте поменять в настройках количество выводимых на страницу (у меня стояло 10). Или зайти по ссылке /wp-admin/edit.php?Key=1&page=IMM-Glossary/IMM-Glossary.php
замену htmlentities на htmlspecialchar делали в этих 2х строчках:
"
<input type="text" id="Title" name="Title" value="<?php echo htmlentities ( $Term[‘Title’] , ENT_QUOTES ) ; ?>" size="35"/>
<textarea id="Definition" name="Definition" rows="10" cols="80"><?php echo htmlentities ( $Term[‘Definition’] , ENT_QUOTES ) ; ?></textarea>
" ?
ругался на странице, что находится на сайте. Вечером посмотрю, т.к под рукой сейчас нет возможности проверить.
23.10.2008 08:30
Ответить
0
Не знаю в каких и в скольких. У меня уже выработанный годами рефлекс: видишь "мусор" в формочке – меняй не глядя все entites на specialchars.
Сейчас посмотрю, что плагин делает….
Блин! Лучше бы я не смотрел. Это клиника!
SHOW TABLES LIKE ‘wp_IMM-Glossary’
SHOW TABLES;
CREATE TABLE `wp_IMM-Glossary`
…
UPDATE wp_options
Ю.Б., подскажите, а каким образом можно попробовать задавать критерии поиска слов? В начале этой темы мы договорились, что нужно будет искать строго слово, например, "Факт", а также его производные, например: "факта, факту".
Можно ли где-то указать эти производные слова, но при этом, Чтобы они были невидимые на странице глоссария? Ведь то, что указывается в "Term", то будет и видимым.
Поняли о чём я? Как-нить можно это реализовать?
Заранее спасибо.
26.10.2008 18:55
Ответить
0
Ага, понял. Берем плагин и переписываем полностью. А еще лучше его просто выкинуть, потому что… ну, я постом выше написал.
Ага, понял. Берем плагин и переписываем полностью. А еще лучше его просто выкинуть, потому что... ну, я постом выше написал.
Ю.Б.,
а если реализовать такое окно в управлении, как и для ввода термина (Term), но в которое можно было бы ввести слова из определения, но в падежах (или интересующих комбинациях). И слова в этом поле, чтобы были видимы только в управлении, а на странице глоссарий сайта слова из этого поля были не видны, но в постах бы искались и вели в глоссарий.
Насколько это будет сложно?
насколько я понимаю, здесь нужен в основном простой копи-паст. Но php я только изучаю и не очень силён.
27.10.2008 19:12
Ответить
0
насколько я понимаю, здесь нужен в основном простой копи-паст.
Ю.Б. тут, пожалуй, мне нужен совет, насколько это будет сложно и обосновано?
27.10.2008 20:26
Ответить
0
Пока не сделаешь, не узнаешь насколько сложно. Тем более, когда речь идет о переделке очень горбатой программы. Но могу точно сказать, что это задачка не для 1-го класса.
Искать по форуму пробовали?
если честно, то не искал
на сайте используется плагин IMM-Glossary
но работает с русскими терминами не аккуратно. Например задав определение для слова "факт" он выделяет этот термин как в словах "ФАКТы" так и в слове "ФАКТический".
Есть, конечно, идея для слов, которые есть в глоссарии в скобке задавать английский перевод и уже это слово будет вести в глоссарий. Но хотелось бы попробовать что-нить более эффективное и менее трудоёмкое.
С русским "менее трудоемкое" – это только бросить нафиг 🙂
Так может надо малость подправить плагин? Не смотрели, как он устроен? Берет начало слова?
в php я не силён. могу привести код плагина, если Вы готовы мне помочь разобраться в нём.
Плагин я и сам найду. Вот где б найти час та натхнення?..
Кстати, последняя версия какая? Или линк дайте.
вот линк:
http://www.internetmarketingmonitor.com/wp-content/uploads/IMM-Glossary.zip
вот описание:
http://www.internetmarketingmonitor.org/word-press-plugins/imm-glossary-wordpress-plugin/
При помощи молотка, зубила и какой-то матери уговорил плагин работать с русским.
Vitality_obn, объясните, чего Вы от него хотите? Надеюсь, Вы догадываетесь, что морфологический анализ каждого слова в записи может занять очень много времени.
очень много времени это сколько?
хочется, чтобы глоссарий делал ссылки на слова, которые в нём забиваются. если забито слово "факт", то он чтобы в посте получали ссылки в глоссарий слова "факт, фактом, факты и прочее", а слова, например, "фактический" не затрагивались.
Чтобы отличить "фактами" от "фактический" в плагине нужно сделать строгий поиск (это не очень сложно). Но тогда нужно проверять все формы слова. В общем случае существительное имеет до 12 словоформ. Значит, время работы увеличится в 12 раз. Плюс время поиска форм слова по словарю. "Велик могучим русский языка!" (с)Александр Иванов.
ссылки разве генерируются не один раз при добавлении нового слова в глоссарий? или плагин постоянно работает и постоянно проверяет весь сайт?
а по поводу проверять все формы слова. нельзя разве сделать для поиска слова такую формулу: подсчитать кол-во букв (симоволов), в том числе и пробелы (если это словосочитание) и прибавить к нему 2 буквы. тем самым мы получаем, что будет искаться слово "факт" и ещё его склонения. А вот другие слова, имеющие посредственное отношение к слову будут исключены?
или это будет сложно реализовать?
Ссылки генерируются при выводе поста на сайт.
"+2 буквы" дадут ложняков немеряно. Не все слова такие простые, как "факт".
по поводу "+2 буквы" согласен, будет много лишнего.
Тогда если говорить о времени, то сколько это будет в секундах/минутах? Если строго прописать несколько словоформ.
Это зависит от сервера, его загрузки, размера постов, количества слов… С уверенностью можно сказать только одно – не более max_execution_time из php.ini 😉
разве ссылки генерируются не тогда, когда добавляешь новое слово в глоссарий? ведь если я поменял какое-то слово, или добавил новое, то только в этом случае будет запускаться плагин для создания ссылок и проверка по всему сайту.
но раз другого варианта не прослеживается для жесткого поиска в глоссарии, то может быть Вы подскажите куда в .php добавлять более жёсткие критерии для поиска?
или есть на примете другой способ по созданию глоссария?
Была идея по использованию плагина "псевдокод", дабы заменить необходимые русские слова и их производные на слова с переводом: "факт" -> "факт (fact)"
но почему-то со словами плагин отказался работать.
разве ссылки генерируются не тогда, когда добавляешь новое слово в глоссарий?[/quote]
Не собираюсь с Вами спорить.
разве ссылки генерируются не тогда, когда добавляешь новое слово в глоссарий?[/quote]
Не собираюсь с Вами спорить.[/quote]
Я не спорю, а спрашиваю. 🙂
Ю.Б. поможите разобраться с кодом? где нужно сделать изменения для строго поиска слов для глоссария?
1242-1243:
спасибо.
а можно какой-нить комментарий? 🙂
Какой-нить можно. Вам какой? 🙂
почему заменили ‘\W’ на ‘\pL’ и ‘#Ui’ на ‘#Uui’?
Потому что должно работать с русским и в юникоде.
ясно
вечером проверю. спасибо большое. 🙂
запустил плагин в локальной версии, но появилась ошибка при входе на страничку глоссария:
"Query: SELECT * FROM `wp_IMM-Glossary` ORDER BY `Title` ASC LIMIT -5 , 5Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘-5 , 5’ at line 1"
что необходимо поправить? заранее спасибо.
А кто его знает! У меня такой беды не было. В плагине таким матюком работа с базой написана, что без пол-литры не поймешь. Но по любому, LIMIT -5 – это бред.
хм…каким же образом мне запустить плагин на локальной версии, чтобы проверить работу плагина? 🙁
Ю.Б. Вы говорили, что запустили плагин тоже не без труда. какие у Вас были трудности? и как мне можно попробовать обойти эту ошибку с базой данных?
В редакторе словаря портились буквы, вылечил заменой htmlentities на htmlspecialchar.
А на какую именно страницу ругается: в управлении или в настройках? Если в управлении, то попробуйте поменять в настройках количество выводимых на страницу (у меня стояло 10). Или зайти по ссылке /wp-admin/edit.php?Key=1&page=IMM-Glossary/IMM-Glossary.php
замену htmlentities на htmlspecialchar делали в этих 2х строчках:
"
<input type="text" id="Title" name="Title" value="<?php echo htmlentities ( $Term[‘Title’] , ENT_QUOTES ) ; ?>" size="35"/>
<textarea id="Definition" name="Definition" rows="10" cols="80"><?php echo htmlentities ( $Term[‘Definition’] , ENT_QUOTES ) ; ?></textarea>
" ?
ругался на странице, что находится на сайте. Вечером посмотрю, т.к под рукой сейчас нет возможности проверить.
Не знаю в каких и в скольких. У меня уже выработанный годами рефлекс: видишь "мусор" в формочке – меняй не глядя все entites на specialchars.
Сейчас посмотрю, что плагин делает….
Блин! Лучше бы я не смотрел. Это клиника!
SHOW TABLES LIKE ‘wp_IMM-Glossary’
SHOW TABLES;
CREATE TABLE `wp_IMM-Glossary`
…
UPDATE wp_options
А SELECT так и не увидел…
Ю.Б., подскажите, а каким образом можно попробовать задавать критерии поиска слов? В начале этой темы мы договорились, что нужно будет искать строго слово, например, "Факт", а также его производные, например: "факта, факту".
Можно ли где-то указать эти производные слова, но при этом, Чтобы они были невидимые на странице глоссария? Ведь то, что указывается в "Term", то будет и видимым.
Поняли о чём я? Как-нить можно это реализовать?
Заранее спасибо.
Ага, понял. Берем плагин и переписываем полностью. А еще лучше его просто выкинуть, потому что… ну, я постом выше написал.
А более конструктивные предложения есть? Не столь кардинальные? Может быть есть какой-нить плагин на примете с подобным действием?
Ю.Б.,
а если реализовать такое окно в управлении, как и для ввода термина (Term), но в которое можно было бы ввести слова из определения, но в падежах (или интересующих комбинациях). И слова в этом поле, чтобы были видимы только в управлении, а на странице глоссарий сайта слова из этого поля были не видны, но в постах бы искались и вели в глоссарий.
Насколько это будет сложно?
насколько я понимаю, здесь нужен в основном простой копи-паст. Но php я только изучаю и не очень силён.
Бог в помощь! Заодно и php выучите. 😀
Ю.Б. тут, пожалуй, мне нужен совет, насколько это будет сложно и обосновано?
Пока не сделаешь, не узнаешь насколько сложно. Тем более, когда речь идет о переделке очень горбатой программы. Но могу точно сказать, что это задачка не для 1-го класса.