TinyMCEに私のURLをPloneの相対リンクへの変換を停止させる方法を誰かに教えてもらえますか?
たとえば、これをHTMLソースに入力すると、次のようになります。
<img src="/images/dir/subdir/my_image.png" />
次のように変換されます。
<img src="../../../my_image.png" />
Tiny_mce.js(portal_skins内)を編集して次のように設定しました。
convert_urls:false,
relative_urls:false,
しかし、効果はありません。私はここですべての同様の投稿を読みましたが、実際にこの質問に答えるものはありません。
ユーザーがファイルシステム(カタログなど)を参照して画像を選択するときに、相対的な処理を実行するのであれば問題ありません。 HTMLボックスに入力した内容を尊重したいので、適切と思われる場合は絶対パスを強制するオプションがあります。これはkupuの標準的な動作です。
何か案は?
Tiny_mce.jsではなくtiny_mce_init.jsにconvert_urls: false
を設定します。 tiny_mce_init.jsの早い段階で、window.tinyMCE.initへの呼び出しが一連の初期化オプションを渡すのがわかります。私が見ているProducts.TinyMCEでは、最後のオプションはfix_list_elements: false
です。そこにオプションを追加します。
編集:tiny_mce_init.jsはProducts.TinyMCE 1.3.x(Plone 4.3)では使用されなくなりました。代わりに、tinymce-jsonconfiguration
ブラウザビューを上書きします。例:
ブラウザレイヤーを備えたパッケージがあると仮定して、browser/configure.zcml
を追加します。
<browser:page
for="*"
name="tinymce-jsonconfiguration"
class=".tinymce.TinyMCEBrowserView"
permission="zope2.View"
attribute="jsonConfiguration"
layer="..interfaces.IMyBrowserLayer"
/>
次に、browser/tinymce.py
を追加します。
try:
import simplejson as json
except ImportError:
import json
from Acquisition import aq_inner
from Products.CMFCore.utils import getToolByName
from Products.TinyMCE.browser.browser import TinyMCEBrowserView as View
from Products.TinyMCE.browser.interfaces.browser import ITinyMCEBrowserView
from zope.interface import implements
class TinyMCEBrowserView(View):
implements(ITinyMCEBrowserView)
def jsonConfiguration(self, field):
"""Return the configuration in JSON"""
utility = getToolByName(aq_inner(self.context), 'portal_tinymce')
config = utility.getConfiguration(context=self.context,
field=field,
request=self.request)
config['convert_urls'] = False
return json.dumps(config)
これらの設定をtinymce.intに追加する必要があります。
relative_urls: false,
convert_urls: false,
remove_script_Host : false,
もう1つの解決策は、パスではなくすべてのリンクと画像にUIDを使用するようにコントロールパネルでTinyMCEを構成することです。これにより、既存のJavaScriptを変更したり、相対URLを表示したりする必要がなくなります。
Plone 5では、TinyMCE設定の[詳細設定]タブで変数を追加する相対URLに対して絶対的なTinyMCEを無効にすることができます
サイト設定> TinyMCE> Advaced
{"relative_urls": false, "convert_urls": false, "remove_script_Host": false}
その他の変数は、Products/CMFPlone/static/components/tinymce-builded/js/tinymce /tinymce.jsで入手できます。
...
popup_css: '',
plugins: '',
document_base_url: documentBaseUrl,
add_form_submit_trigger: true,
submit_patch: true,
add_unload_trigger: true,
convert_urls: true,
relative_urls: true,
remove_script_Host: true,
object_resizing: true,
...