Publisher does not support the Fluid field type. Please do not contact asking when support will be available.

If you purchased an add-on from expressionengine.com, be sure to visit boldminded.com/claim to add the license to your account here on boldminded.com.

Ticket: Wrong entries title after Publisher update

Status Resolved
Add-on / Version Publisher 2.4.2
Severity
EE Version 3.5.5

Marco Malavasi

Apr 18, 2017

Hi, I’ve found a new bug on Publisher. After the update when I try to edit an existing entry, in the title field, it shows the title of another entry.
I’ve made a search in the database on the ‘exp_publisher_titles’ table and I saw that record id is correct and also its ‘title’ field.
I did not try to save the entry, but I assume that, if I do, it will change the entry title as it is filled by another value.
the ‘title’ field is the only one affected by this bug. All other fields seem to be ok.
Is this a known bug, or I’m the first?
Thank you

#1

BoldMinded (Brian)

This has come up once before and I was unable to resolve it. The customer re-entered their content. Its not something I can replicate locally, so if you need me to look into this you’ll have to zip up your site and send it to me (including DB and admin login) so I can debug this locally.

#2

BoldMinded (Brian)

I tried using the zip file I sent you last time, but for some reason its not working anymore. I can’t login to the CP.

#3

BoldMinded (Brian)

Ok, got the environment working again. Can you provide more information? What is the entry_id of an entry you’re seeing this happen in? Is it a newly created entry after the upgrade was done or was it an old entry that existed before the upgrade?

#4

Marco Malavasi

Ok, good. I saw this on an old entry, created before the upgrade (entry_id 1630). It seems that the bug happens on the default language (italian) - if I select the english translation it’s correct. The correct title of the entry is “TS” and the correct url_title is “ts-series” for all languages. This happens also on entries 1631 and 1632. I think that all entries are affected by the bug. Thank you

#5

BoldMinded (Brian)

Comment has been marked private.

#6

Marco Malavasi

I copied the ‘/addons/publisher/’ directory to my ‘/system/user/addons/’ folder and also copied the ‘/themes/user/publisher/’ folder to the ‘/themes/user/’ directory in my ExpressionEngine install. Now in the release panel it shows the right version of Publisher, but the entries issue still remain. For the entry_id 1630 it still fill the title and URL field with a wrong value. Still happens also for the 1631 and 1632 and so on.

#7

BoldMinded (Brian)

Comment has been marked private.

#8

Marco Malavasi

This one seems to work! I’ll test it for some days. Thank you.

#9

Marco Malavasi

Hi Brian, this morning I was testing the last Publisher’s build you sent and I noticed that the title of the entries is correct but all other text fields and image fields are wrong! Only relationship fields survived to the new upgrade. You can refer to entry_id 1630. If you check the fields before the update you’ll see that they’re different from after the upgrade. Thank you

#10

BoldMinded (Brian)

I discovered the root of the problem, but I’m unsure when I’ll be able to get it fixed. It could be several days to a week. Its not a simple fix. Sorry.

#11

Marco Malavasi

Ok, I’ll be waiting for a fix. Thank you

#12

BoldMinded (Brian)

Comment has been marked private.

#13

Marco Malavasi

I tried to install this build. It seems that fix the fields issue but there are no more translations! If I enter an entry and check english language or french language it display only default language (in my case italian). In the database, translations are still there.

#14

Marco Malavasi

  • If I try to edit an entry, not to enter. Also I’m using ‘Low Search’ and ‘Publisher Low Search’. Don’t know if they can affect Publisher2 functions.
#15

BoldMinded (Brian)

Publisher Low Search does not work with Publisher 2 yet. It’ll be several weeks or longer before it does. Its a much lower priority for me right now.

#16

Marco Malavasi

Yes, it’s not a priority for me too. I’d like to solve the translation issue first. Thank you

#17

BoldMinded (Brian)

Ok, this is an easy fix. If you don’t feel comfortable making this change I can send a new build in a couple of hours.

Go to the Service/Entry/Entry.php file line 194 and you should see this:

https://www.dropbox.com/s/hz35ajhbzrxnjc4/Screenshot 2017-04-26 06.55.48.png?dl=0

Just add this:

d.*,
#18

Marco Malavasi

It seems to work! I’ll test it for a few days and then I’ll give you a more accurate feedback. Thank you

#19

BoldMinded (Brian)

Excellent! Sorry this was such a pain for you, but glad its fixed now.

Going to close this ticket. Feel free to re-open if you need to, but if something new/unrelated comes up create a new ticket.

#20

Marco Malavasi

I tried to change a field in a language translation, but when I save the entry I get this error:

Exception Caught

SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘field_id_43’ in ‘field list’: UPDATE exp_channel_data SET field_id_2 = ”, field_id_3 = ”, field_id_4 = ”, field_id_5 = ”, field_id_6 = ”, field_id_7 = ”, field_id_8 = ”, field_id_9 = ”, field_id_10 = ”, field_id_12 = ”, field_id_13 = ”, field_id_14 = ”, field_id_15 = ”, field_id_16 = ”, field_id_17 = ”, field_id_18 = ”, field_id_19 = ”, field_id_20 = ”, field_id_21 = ”, field_id_22 = ‘Monoblocchi commerciali a parete "small"’, field_id_24 = ‘{filedir_1}ts1s.jpg’, field_id_25 = ”, field_id_26 = ”, field_id_27 = ”, field_id_28 = ”, field_id_29 = ”, field_id_31 = ”, field_id_32 = ”, field_id_33 = ”, field_id_34 = ”, field_id_35 = ”, field_id_37 = ”, field_id_38 = ”, field_id_39 = ”, field_id_40 = ”, field_id_42 = ”, field_id_43 = ”, field_id_44 = ”, field_id_45 = ”, field_id_46 = ”, field_id_47 = ”, field_id_48 = ”, field_id_49 = ”, field_id_50 = ”, field_id_51 = ”, field_id_53 = ”, field_id_54 = ”, field_id_55 = ‘{filedir_6}ts_airflow.svg’, field_id_56 = ‘R404A’, field_id_58 = ”, field_id_59 = ”, field_id_60 = ”, field_id_63 = ”, field_id_64 = ”, field_id_68 = ‘+20’, field_id_69 = ‘+43’, field_id_70 = ‘2’, field_id_71 = ‘29’, field_id_72 = ‘350’, field_id_73 = ‘2200’, field_id_74 = ”, field_id_75 = ”, field_id_77 = ”, field_id_78 = ”, field_id_79 = ”, field_id_80 = ”, field_id_81 = ”, field_id_82 = ”, field_id_83 = ”, field_id_84 = ”, field_id_86 = ”, field_id_89 = ‘-25’, field_id_90 = ‘+5’, field_id_91 = ”, field_id_92 = ”, field_id_94 = ‘<ul>\n <li>Unità monoblocco compatta con installazione a parete di tipo a tampone. Soluzione versatile e ideale per svariate applicazioni in celle di piccole dimensioni e in diverse gamme di temperatura.</li>\n <li>Linea compatta particolarmente adatta all’installazione in spazi molto ridotti. </li>\n <li>Rapido montaggio con tempi di installazione estremamente ridotti.</li>\n <li>Strumento elettronico di controllo dedicato alla gestione completa di unità refrigeranti; compatto, dall’utilizzo semplice ed intuitivo e dalla programmazione veloce.</li>\n <li>Elevate prestazioni grazie alla componentistica di estrema qualità e perfettamente calibrata per ogni specifica applicazione.</li>\n <li>Facilità di accesso ai principali componenti per una facile manutenzione dell’impianto.</li>\n</ul>’, field_id_95 = ‘<ul>\n <li>Carrozzeria della parte condensante in lamiera di acciaio verniciato a polveri epossidiche. Struttura della parte evaporante in alluminio.</li>\n <li>Installazione a parete cella con foro per il tampone.</li>\n <li>Si consiglia l’utilizzo dell’unità in ambienti con temperature superiori a 10°C. In caso di installazione in ambienti con temperature inferiori a 10°C è necessario l’ utilizzo di accessori opzionali. Inoltre se l’unità viene installata all’esterno è necessario proteggere l’unità dalle intemperie. </li>\n <li>Strumento elettronico di controllo. </li>\n <li>Tipo di espansione: tubo capillare. </li>\n <li>Filtro sulla linea del liquido di tipo a setaccio molecolare. </li>\n <li>Luce cella in tutte le unità. </li>\n <li>Cavo per il collegamento della resistenza porta nelle unità a bassa temperatura. </li>\n <li>Bacinella di evaporazione dell’acqua di scarico e tubo di troppo pieno per tutte le unità. </li>\n <li>Resistenza scarico condensa in tutte le unità.</li>\n</ul>’, field_id_96 = ”, field_id_97 = ‘{filedir_8}technob_ts_series.pdf’, field_id_98 = ”, field_id_99 = ”, field_id_100 = ”, field_id_101 = ”, field_id_102 = ”, field_id_103 = ”, field_id_104 = ‘Serie TS - Monoblocchi commerciali 'small' a parete, di tipo a tampone. Soluzione versatile e ideale per svariate applicazioni.’, field_id_105 = ”, field_id_106 = ”, field_id_107 = ‘A parete’, field_id_108 = ”, field_id_109 = ‘Serie TS’, field_id_112 = ”, field_id_113 = ”, field_id_114 = ”, field_id_115 = ”, field_id_116 = ”, field_id_117 = ”, field_id_118 = ” WHERE entry_id = 1630

ee/legacy/database/drivers/mysqli/mysqli_connection.php:122

I cannot do anything. I have to logout and login back again in the control panel. If I try to edit again the entry, I see that it has been modified so, despite the error, it save the entry. But everytime I do a change it crashes.

#21

Marco Malavasi

This is the error detail:

Stack Trace: hide details

0 ee/legacy/database/drivers/mysqli/mysqli_driver.php(137): CI_DB_mysqli_connection->query(‘UPDATE `exp_cha…’)

1 ee/legacy/database/DB_driver.php(297): CI_DB_mysqli_driver->_execute(‘UPDATE `exp_cha…’)

2 ee/legacy/database/DB_driver.php(203): CI_DB_driver->simple_query(‘UPDATE `exp_cha…’)

3 ee/legacy/database/DB_active_rec.php(1572): CI_DB_driver->query(‘UPDATE `exp_cha…’)

4 user/addons/publisher/Service/Entry/Entry.php(455): CI_DB_active_record->update(‘channel_data’, Array)

5 user/addons/publisher/Service/Entry/Entry.php(291): BoldMinded\Publisher\Service\Entry\Entry->cleanup(Object(BoldMinded\Publisher\Model\EntryTranslation))

6 user/addons/publisher/ext.publisher.php(450): BoldMinded\Publisher\Service\Entry\Entry->save(Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)

7 [internal function]: Publisher_ext->after_channel_entry_save(Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)

8 ee/legacy/libraries/Extensions.php(243): call_user_func_array(Array, Array)

9 ee/legacy/libraries/Extensions.php(138): EE_Extensions->call_class(‘Publisher_ext’, ‘after_channel_e…’, Array, Array)

10 [internal function]: EE_Extensions->call(‘after_channel_e…’, Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)

11 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(642): call_user_func_array(Array, Array)

12 [internal function]: EllisLab\ExpressionEngine\Service\Model\Model->EllisLab\ExpressionEngine\Service\Model\{closure}(‘after_channel_e…’, Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)

13 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(615): call_user_func_array(Object(Closure), Array)

14 [internal function]: EllisLab\ExpressionEngine\Service\Model\Model->EllisLab\ExpressionEngine\Service\Model\{closure}()

15 ee/EllisLab/ExpressionEngine/Service/Event/Emitter.php(153): call_user_func_array(Object(Closure), Array)

16 [internal function]: EllisLab\ExpressionEngine\Service\Event\Emitter->emit(‘afterSave’)

17 ee/EllisLab/ExpressionEngine/Library/Data/Entity.php(631): call_user_func_array(Array, Array)

18 [internal function]: EllisLab\ExpressionEngine\Library\Data\Entity->emit(‘afterSave’)

19 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(834): call_user_func_array(‘parent::emit’, Array)

20 ee/EllisLab/ExpressionEngine/Service/Model/Query/Update.php(60): EllisLab\ExpressionEngine\Service\Model\Model->emit(‘afterSave’)

21 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(294): EllisLab\ExpressionEngine\Service\Model\Query\Update->run()

22 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(260): EllisLab\ExpressionEngine\Service\Model\DataStore->runQuery(‘Update’, Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))

23 ee/EllisLab/ExpressionEngine/Service/Model/Query/Builder.php(83): EllisLab\ExpressionEngine\Service\Model\DataStore->updateQuery(Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))

24 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(366): EllisLab\ExpressionEngine\Service\Model\Query\Builder->update()

25 ee/EllisLab/ExpressionEngine/Model/Content/ContentModel.php(198): EllisLab\ExpressionEngine\Service\Model\Model->save()

26 ee/EllisLab/ExpressionEngine/Controller/Publish/AbstractPublish.php(295): EllisLab\ExpressionEngine\Model\Content\ContentModel->save()

27 ee/EllisLab/ExpressionEngine/Controller/Publish/Edit.php(482): EllisLab\ExpressionEngine\Controller\Publish\AbstractPublish->saveEntryAndRedirect(Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry))

28 [internal function]: EllisLab\ExpressionEngine\Controller\Publish\Edit->entry(‘1630’)

29 ee/EllisLab/ExpressionEngine/Core/Core.php(189): call_user_func_array(Array, Array)

30 ee/EllisLab/ExpressionEngine/Core/Core.php(94): EllisLab\ExpressionEngine\Core\Core->runController(Array)

31 ee/EllisLab/ExpressionEngine/Boot/boot.php(151): EllisLab\ExpressionEngine\Core\Core->run(Object(EllisLab\ExpressionEngine\Core\Request))

32 admin.php(143): require_once(‘…’)

32 admin.php(143): require_once(‘…’)

#22

BoldMinded (Brian)

Comment has been marked private.

#23

BoldMinded (Brian)

Comment has been marked private.

#24

BoldMinded (Brian)

Comment has been marked private.

#25

Marco Malavasi

Hi, the build publisher2-242-98b31514.zip still give me the same error “SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘field_id_43’ in ‘field list’” when I try to save.

The build publisher2-242-22f0a02c.zip, when I save, show this:

Notice Undefined index: publisher_low_search ee/legacy/libraries/Extensions.php, line 176 show details

Error Unable to load the following extension file: ext.publisher_low_search.php

Note that yesterday I have uninstalled Publisher Low Search and removed its folder, when you said that it does not work with Publisher 2 yet. So I cannot understand what it is looking for.

For your information I’m testing with the entry_id 1630, but it gives me the same errors also on others entries. Anyway entries seems to be saved correctly if I go ahead and I check after the error.

Thank you

#26

BoldMinded (Brian)

The SQL error seems suspect to me. I don’t get any such error when saving or viewing an entry locally, or on demo.boldminded.com.

#27

BoldMinded (Brian)

Do you get the same stack trace as above?

#28

BoldMinded (Brian)

It looks like field_id_43 exists in the publisher_data table, but not channel_data table, which suggests that its a field that was deleted at some point but was not correctly removed from publisher_data table. Do you remember what field that might have been? Did your site used to use Playa? If so its possible Playa did not uninstall correctly and left behind some extra columns.

To fix the issue you should just be able to go into the database and delete field_id_43 from the exp_publisher_data table.

#29

Marco Malavasi

No, I never installed Playa on this site. Anyway I deletd field_id_43, field_id_44 and field_id_46 that gave me the same error. After that it was searching for ‘publisher_lang_id’ and ‘publisher_status’ column in ‘exp_publisher_titles’ table. Added these two columns filling them with the content of ‘lang_id’ and ‘status’ column from the same table. Then it was searching for ‘publisher_lang_id’ and ‘publisher_status’ column in ‘exp_publisher_data’ table. Added these two columns filling them with the content of ‘lang_id’ and ‘status’ column from the same table. Tried again to edit the entry and save and I get this error: “Error: Unable to locate the model you have specified: publisher_language”. I have no idea how to continue debugging…

#30

BoldMinded (Brian)

“After that it was searching for ‘publisher_lang_id’ and ‘publisher_status’ column in ‘exp_publisher_titles’ table.” - If that is the case then I need to see the error message b/c those columns shouldn’t be there and nothing should request them. Can you delete those two columns and re-create the error message for me?

#31

BoldMinded (Brian)

I’m going to need full error messages and stack traces for each of those errors before I can assist with this.

Based on those error messages it sounds like you’re using Publisher 1 or something. Publisher 2 shouldn’t have any active calls to the publisher_language model, that was strictly for the EE 2 version. The only instances to that model are in methods that aren’t even called by Publisher 2 (they’re legacy/deprecated). And the fact that its still thinking publisher_lang_id is a table column name is very confusing.

#32

Marco Malavasi

This is the error message:

SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘t.publisher_lang_id’ in ‘field list’: SELECT t.entry_id, t.title AS field_id_0, d.field_id_22, t.publisher_lang_id, t.publisher_status FROM (exp_publisher_titles t) INNER JOIN exp_publisher_data d ON t.entry_id = d.entry_id AND t.publisher_lang_id = d.publisher_lang_id AND t.publisher_status = d.publisher_status WHERE t.channel_id IN (3) AND t.entry_id IN (1630)

ee/legacy/database/drivers/mysqli/mysqli_connection.php:122

#33

Marco Malavasi

And this is the stack trace:

0 ee/legacy/database/drivers/mysqli/mysqli_driver.php(137): CI_DB_mysqli_connection->query(‘SELECT t.`ent…’)

1 ee/legacy/database/DB_driver.php(297): CI_DB_mysqli_driver->_execute(‘SELECT t.`ent…’)

2 ee/legacy/database/DB_driver.php(203): CI_DB_driver->simple_query(‘SELECT t.`ent…’)

3 ee/legacy/database/DB_active_rec.php(1219): CI_DB_driver->query(‘SELECT t.`ent…’)

4 user/addons/publisher_low_search/ext.publisher_low_search.php(163): CI_DB_active_record->get()

5 [internal function]: Publisher_low_search_ext->low_search_get_index_entries(Array, Array)

6 ee/legacy/libraries/Extensions.php(243): call_user_func_array(Array, Array)

7 ee/legacy/libraries/Extensions.php(138): EE_Extensions->call_class(‘Publisher_low_s…’, ‘low_search_get_…’, Array, Array)

8 user/addons/low_search/libraries/Low_search_index.php(218): EE_Extensions->call(‘low_search_get_…’, Array, Array)

9 user/addons/low_search/libraries/Low_search_index.php(83): Low_search_index->build_by_collection(6, Array)

10 user/addons/low_search/ext.low_search.php(96): Low_search_index->build_by_entry(1630)

11 [internal function]: Low_search_ext->after_channel_entry_save(Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)

12 ee/legacy/libraries/Extensions.php(243): call_user_func_array(Array, Array)

13 ee/legacy/libraries/Extensions.php(138): EE_Extensions->call_class(‘Low_search_ext’, ‘after_channel_e…’, Array, Array)

14 [internal function]: EE_Extensions->call(‘after_channel_e…’, Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)

15 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(642): call_user_func_array(Array, Array)

16 [internal function]: EllisLab\ExpressionEngine\Service\Model\Model->EllisLab\ExpressionEngine\Service\Model\{closure}(‘after_channel_e…’, Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)

17 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(615): call_user_func_array(Object(Closure), Array)

18 [internal function]: EllisLab\ExpressionEngine\Service\Model\Model->EllisLab\ExpressionEngine\Service\Model\{closure}()

19 ee/EllisLab/ExpressionEngine/Service/Event/Emitter.php(153): call_user_func_array(Object(Closure), Array)

20 [internal function]: EllisLab\ExpressionEngine\Service\Event\Emitter->emit(‘afterSave’)

21 ee/EllisLab/ExpressionEngine/Library/Data/Entity.php(631): call_user_func_array(Array, Array)

22 [internal function]: EllisLab\ExpressionEngine\Library\Data\Entity->emit(‘afterSave’)

23 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(834): call_user_func_array(‘parent::emit’, Array)

24 ee/EllisLab/ExpressionEngine/Service/Model/Query/Update.php(60): EllisLab\ExpressionEngine\Service\Model\Model->emit(‘afterSave’)

25 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(294): EllisLab\ExpressionEngine\Service\Model\Query\Update->run()

26 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(260): EllisLab\ExpressionEngine\Service\Model\DataStore->runQuery(‘Update’, Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))

27 ee/EllisLab/ExpressionEngine/Service/Model/Query/Builder.php(83): EllisLab\ExpressionEngine\Service\Model\DataStore->updateQuery(Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))

28 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(366): EllisLab\ExpressionEngine\Service\Model\Query\Builder->update()

29 ee/EllisLab/ExpressionEngine/Model/Content/ContentModel.php(198): EllisLab\ExpressionEngine\Service\Model\Model->save()

30 ee/EllisLab/ExpressionEngine/Controller/Publish/AbstractPublish.php(295): EllisLab\ExpressionEngine\Model\Content\ContentModel->save()

31 ee/EllisLab/ExpressionEngine/Controller/Publish/Edit.php(482): EllisLab\ExpressionEngine\Controller\Publish\AbstractPublish->saveEntryAndRedirect(Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry))

32 [internal function]: EllisLab\ExpressionEngine\Controller\Publish\Edit->entry(‘1630’)

33 ee/EllisLab/ExpressionEngine/Core/Core.php(189): call_user_func_array(Array, Array)

34 ee/EllisLab/ExpressionEngine/Core/Core.php(94): EllisLab\ExpressionEngine\Core\Core->runController(Array)

35 ee/EllisLab/ExpressionEngine/Boot/boot.php(151): EllisLab\ExpressionEngine\Core\Core->run(Object(EllisLab\ExpressionEngine\Core\Request))

36 admin.php(143): require_once(‘…’)

36 admin.php(143): require_once(‘…’)

#34

BoldMinded (Brian)

You’re getting those errors b/c Publisher Low Search has not yet been ported to EE3. Sounds like you’re using the EE2 version.

#35

Marco Malavasi

Sorry, my mistake! The old publisher_low_search folder remained in the addons directory. Anyway, publisher_low_search was not installed or activated as it’s an EE2 plugin that doesn’t run on EE3. But even if I delete the folder, it show me this error:

Notice Undefined index: publisher_low_search ee/legacy/libraries/Extensions.php, line 176 show details Severity: E_NOTICE Error Unable to load the following extension file: ext.publisher_low_search.php

It seems that it is still searching for Publisher Low Search. Is there a way to uninstall it definitely?

#36

BoldMinded (Brian)

You’ll need to go into the exp_extensions table and find the Publisher_low_search_ext rows and manually delete them.

Login to reply