如何将 href link 添加到 DjangoCMS 索引页中的另一个页面
How can I add a href link to another page in DjangoCMS index page
我有一个使用 DjangoCMS 开发的网站,我试图将 href
添加到另一个页面 (site.com/en/blog)。不幸的是 none 我的尝试很顺利:
urls.py
from __future__ import print_function
from cms.sitemaps import CMSSitemap
from django.conf.urls import * # NOQA
from django.conf.urls.i18n import i18n_patterns
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.contrib import admin
from django.conf import settings
admin.autodiscover()
urlpatterns = i18n_patterns('',
url(r'^admin/', include(admin.site.urls)), # NOQA
url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap',
{'sitemaps': {'cmspages': CMSSitemap}}),
url(r'^select2/', include('django_select2.urls')),
url(r'^', include('cms.urls')),
url(r'^blog', include('cms.urls')),
)
# This is only needed when using runserver.
if settings.DEBUG:
urlpatterns = patterns('',
url(r'^media/(?P<path>.*)$', 'django.views.static.serve', # NOQA
{'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
) + staticfiles_urlpatterns() + urlpatterns # NOQA
index.html
...
<li class="menu-item-has-children"><a href="blog.html">Blog</a>
<ul class="sub-menu">
<li><a href="blog-3col.html">3 Columns</a></li>
<li><a href="blog-2col.html">2 Columns</a></li>
<li><a href="blog-2col2.html">2 Columns with sidebar</a></li>
<li><a href="blog-classic.html">Standard</a></li>
<li><a href="blog-full.html">Fullwidth</a></li>
<li><a href="blog-modern.html">Modern</a></li>
<li><a href="blog-modern2.html">Modern 2</a></li>
<li><a href="blog.html">Modern 2 Lite</a></li>
</ul>
...
我试过以下方法:
<a href="blog.html">Blog</a>
或
<a href="{% url 'blog.html' %}">Blog</a>
或
<a href="{% url blog.html %}">Blog</a>
但是每次我都得到404-Page not found
。我确信该页面存在于该路径中。
有什么提示吗?
与其自己手动编写菜单,不如使用 django CMS 中的 {% show_menu %}
模板标签。
如果您也需要非 CMS 菜单节点,请查看如何在 django CMS 中extend the menu。
我有一个使用 DjangoCMS 开发的网站,我试图将 href
添加到另一个页面 (site.com/en/blog)。不幸的是 none 我的尝试很顺利:
urls.py
from __future__ import print_function
from cms.sitemaps import CMSSitemap
from django.conf.urls import * # NOQA
from django.conf.urls.i18n import i18n_patterns
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.contrib import admin
from django.conf import settings
admin.autodiscover()
urlpatterns = i18n_patterns('',
url(r'^admin/', include(admin.site.urls)), # NOQA
url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap',
{'sitemaps': {'cmspages': CMSSitemap}}),
url(r'^select2/', include('django_select2.urls')),
url(r'^', include('cms.urls')),
url(r'^blog', include('cms.urls')),
)
# This is only needed when using runserver.
if settings.DEBUG:
urlpatterns = patterns('',
url(r'^media/(?P<path>.*)$', 'django.views.static.serve', # NOQA
{'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
) + staticfiles_urlpatterns() + urlpatterns # NOQA
index.html
...
<li class="menu-item-has-children"><a href="blog.html">Blog</a>
<ul class="sub-menu">
<li><a href="blog-3col.html">3 Columns</a></li>
<li><a href="blog-2col.html">2 Columns</a></li>
<li><a href="blog-2col2.html">2 Columns with sidebar</a></li>
<li><a href="blog-classic.html">Standard</a></li>
<li><a href="blog-full.html">Fullwidth</a></li>
<li><a href="blog-modern.html">Modern</a></li>
<li><a href="blog-modern2.html">Modern 2</a></li>
<li><a href="blog.html">Modern 2 Lite</a></li>
</ul>
...
我试过以下方法:
<a href="blog.html">Blog</a>
或
<a href="{% url 'blog.html' %}">Blog</a>
或
<a href="{% url blog.html %}">Blog</a>
但是每次我都得到404-Page not found
。我确信该页面存在于该路径中。
有什么提示吗?
与其自己手动编写菜单,不如使用 django CMS 中的 {% show_menu %}
模板标签。
如果您也需要非 CMS 菜单节点,请查看如何在 django CMS 中extend the menu。