Top menu: How To Create a Top Navigation Bar

Multilevel Navigation Menu — Плагин для WordPress

  • Детали
  • Отзывы
  • Установка
  • Поддержка
  • Разработка

Multilevel Navigation Menu plugin ability to add a full-screen navigation menu to our website. An easy way to use the plugin on our website.

You can use the [multilevel_navigation_menu] shortcode in your header file and after that, the menu will be shown automatically on the front side.

Make sure you have hide your default navigation menu before adding a shortcode. From CSS, javascript or any other way.

Awesome features
  • Display the menu with full-width or container width
  • Set menu outer width as well as inner container left and right spacing of the menu
  • Display the multi-level menu (Level 1, 2, 3, 4, 5)
  • Set menu background and font color based on the menu level
  • Set the responsive breakpoint of menu
Shortcodes
  • [multilevel_navigation_menu]
    — Show the navigation menu in the header(front side).
  • Multilevel Navigation Menu
  • Setting page
  • Assign menu on theme location
  • Install using the WordPress Plugin installer, or Extract the zip file and drop the contents in the wp-content/plugins/ directory of your WordPress installation
  • Activate the plugin through the «Plugins» administration page in WordPress
  • Go to Appearance > Multilevel Navigation Menu
  • Navigate to Appearance > Multilevel Navigation Menu and enable.
  • Use the [multilevel_navigation_menu] in your header file and save it.
  • Navigate to Appearance > Multilevel Navigation Menu and select color from the color picker based on the menu level.
  • Navigate to Appearance > Multilevel Navigation Menu and set as below:
  • Navigation Menu Outer Width: Insert Width with «px» or «%».
  • Navigation Menu Inner Container Left Right Space (Padding): Insert Width with «px» or «%».
  • Mobile Menu Breakpoint : Insert Breakpoint with «px».

plugin is awesome but dropdown menu is not working properly. please update with this #mnmwp-main-menu ul ul { z-index: 2; }

This plugin is really awesome! Very well documented.

This plugin is very useful for Multilevel Navigation Menu.

Посмотреть все 3 отзыва

«Multilevel Navigation Menu» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

  • Laxman Prajapati

Перевести «Multilevel Navigation Menu» на ваш язык.

Заинтересованы в разработке?

Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.

1.0.0 — 22/03/2020
  • Initial Release
1.0.1 — 02/05/2020
  • Fix Minor bugs.
1.0.2 — 21/11/2020
  • Fix Minor bugs.
1.0.3 — 04/04/2021
  • Fix Minor css related bugs.
1.0.4 — 04/04/2021
  • Fix Minor css related bugs.
1.0.5 — 01/08/2021
  • Fix Minor bugs.
1.0.6 — 04/02/2022
  • Fix Minor bugs.
1.0.7 — 04/02/2022
  • Fix Minor bugs.

Оценки

Посмотреть все

  • 5 звёзд 3
  • 4 звезды 0
  • 3 звезды 0
  • 2 звезды 0
  • 1 звезда 0

Войдите, чтобы оставить отзыв.

Участники

  • Laxman Prajapati

Поддержка

Решено проблем за последние 2 месяца:

1 из 1

Перейти в форум поддержки

Урок 17.

Android Navigation. Знакомство с BottomNavigationView. Как добавить фрагменты в панель Bottom Navigation. — Fandroid.info

На прошлом уроке мы работали с анимацией переходов между экранами. На этом уроке познакомимся с нижней панелью навигации BottomNavigationView, которая позволяет переходить между экранами – пунктами назначения навигации, а также наглядно информирует пользователя о том, на каком экране он находится. Разберемся, как добавить Bottom Navigation в андроид приложение и как добавить в BottomNavigationView новые фрагменты.

Содержание

  1. Создаем проект
  2. Неоходимые библиотеки
  3. Граф навигации
  4. Добавление экранов
  5. Хост навигации
  6. BottomNavigationView
  7. Добавление пунктов меню
  8. Добаление идентификаторов в контроллер навигации
  9. Рефакторинг

Создаем проект

С одной стороны, создать простое приложение с панелью навигации можно, не написав ни одной строчки кода. Достаточно воспользоваться готовым макетом Bottom Navigation Activity на этапе создания проекта в Android Studio. При этом создается проект приложения с нижней панелью навигации BottomNavigationView на главном экране, в которой отображается три пункта. При нажатии каждого из них меняются экраны приложения. Это все хорошо, скажете вы, но если нужно добавить или убрать экраны и пункты для них? Или добавить нижнюю навигацию в существующее приложение?

Ок, давайте изучим структуру проекта, созданного по шаблону, и по ходу попробуем добавить сюда пару новых экранов и пунктов для них, а также рассмотрим шаги для добавления нижней панели навигации в уже существующее приложение.

Неоходимые библиотеки

Если открыть файл сборки build.gradle, в секции dependencies можно увидеть подключенные библиотеки из пакета androidx.navigation (с ktx  для проектов на kotlin)  которые нам уже знакомы по предыдущим урокам на тему навигации в приложении. Если вы добавляете нижнюю навигацию в существующее приложение, то начинать нужно с добавления этих библиотек в ваш проект.

implementation 'androidx.navigation:navigation-fragment-ktx:2.3.3'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.3'

 

Граф навигации

В папке res есть папка navigation, в которой размещен все тот же граф навигации, его вы помните по предыдущим урокам. Без него, как вы понимаете, не обходится здесь и нижняя панель навигации.

<fragment
    android:id="@+id/navigation_home"
    android:name="info.fandroid.bottomnavapplication17.ui.home.HomeFragment"
    android:label="@string/title_home"
    tools:layout="@layout/fragment_home" />

<fragment
    android:id="@+id/navigation_dashboard"
    android:name="info.fandroid.bottomnavapplication17.ui.dashboard.DashboardFragment"
    android:label="@string/title_dashboard"
    tools:layout="@layout/fragment_dashboard" />

<fragment
    android:id="@+id/navigation_notifications"
    android:name="info.fandroid.bottomnavapplication17. ui.notifications.NotificationsFragment"
    android:label="@string/title_notifications"
    tools:layout="@layout/fragment_notifications" />

Как видите, в графе навигации есть три фрагмента, которые являются пунктами назначения, или экранами, на которые мы попадаем, переходя по пунктам панели Bottom Navigation. Но обратите внимание:  фрагменты в графе не содержат никаких <action> и не связаны стрелками переходов. Это логично, поскольку в данном случае они являются только пунктами назначения, и не ведут из одного в другой. Переход осуществляется из общего компонента над фрагментами, которым является активити-хост. Мы рассмотрим это позже. А сейчас, чтобы добавить новые экраны, прежде всего нужно добавить сюда, в граф навигации, новые пункты назначения.

Добавление экранов

Нажмите кнопку New Destination вверху и выберите Create New Destination. На экране добавления фрагментов выберите шаблон Fragment (with ViewModel).  Добавьте один за другим два фрагмента – четвертый и пятый экран. Я их так и назову: FourthFragment  и FifthFragment.

Вы можете выбрать при добавлении просто Fragment blank. Но связка Fragment + ViewModel предоставляет преимущества сохранения состояния экрана при изменении конфигурации – например, при повороте устройства. Подробнее об этом мы говорили в Уроке 6.

В граф навигации добавилось два фрагмента. Переименуйте их идентификаторы в соответствии с именами других пунктов назначения: navigation_fourth и navigation_fifth. Переименование всегда лучше делать через рефакторинг, нажатием комбинации Shift + F6 – это гарантирует изменение всех возможных связей.

<fragment
    android:id="@+id/navigation_home"
    android:name="info.fandroid.bottomnavapplication17.ui.home.HomeFragment"
    android:label="@string/title_home"
    tools:layout="@layout/fragment_home" />

<fragment
    android:id="@+id/navigation_dashboard"
    android:name="info.fandroid.bottomnavapplication17.ui.dashboard.DashboardFragment"
    android:label="@string/title_dashboard"
    tools:layout="@layout/fragment_dashboard" />

<fragment
    android:id="@+id/navigation_notifications"
    android:name="info.
fandroid.bottomnavapplication17.ui.notifications.NotificationsFragment" android:label="@string/title_notifications" tools:layout="@layout/fragment_notifications" /> <fragment android:id="@+id/navigation_fourth" android:name="info.fandroid.bottomnavapplication17.ui.fourth.FourthFragment" android:label="@string/title_fourth" tools:layout="@layout/fourth_fragment" /> <fragment android:id="@+id/navigation_fifth" android:name="info.fandroid.bottomnavapplication17.ui.fifth.FifthFragment" android:label="@string/title_fifth" tools:layout="@layout/fifth_fragment" />

Можно было оставить идентификаторы как было, но более правильно с точки зрения Code Convention, чтобы названия однотипных элементов были логически похожими. Да и находить их будет легче потом.

Также измените значение параметра android:label  — оно используется для заголовка экрана. Впишите сюда текст, который вы хотите видеть в заголовке соответствующего экрана, желательно сохранить его затем в строковых ресурсах. Для сохранения нажмите желтую лампочку и выберите пункт «Extract string resourse», а затем придумайте название строки, которая сохранится в файле res/values/strings.xml.

На этом добавление экранов закончено. Но, если запустить приложение сейчас, они не будут отображаться, и нижняя панель навигации никак не изменится. Что ж, идем дальше.

Хост навигации

Если мы откроем папку layout, то увидим макеты всех фрагментов – пунктов назначения, и макет главного активити.

Макет  activity_main.xml  содержит компонент fragment – это хост навигации, в котором отображаются фрагменты – пункты назначения. Он связан с графом навигации через параметр app:navGraph.

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="?attr/actionBarSize">

    <com. google.android.material.bottomnavigation.BottomNavigationView
        android:id="@+id/nav_view"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginStart="0dp"
        android:layout_marginEnd="0dp"
        android:background="?android:attr/windowBackground"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:menu="@menu/bottom_nav_menu" />

    <fragment
        android:id="@+id/nav_host_fragment"
        android:name="androidx.navigation.fragment.NavHostFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:defaultNavHost="true"
        app:layout_constraintBottom_toTopOf="@id/nav_view"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:navGraph="@navigation/mobile_navigation" />

</androidx.
constraintlayout.widget.ConstraintLayout>

Также здесь присутствует и компонент BottomNavigationView. Это и есть нижняя панель навигации. Компонент BottomNavigationView является частью библиотеки компонентов материального дизайна. Эта библиотека должна быть импортирована в файле сборки модуля:

dependencies {    
// ...    
implementation 'com.google.android.material:material:<version>'    
// ...  
}

 

Обычно она уже есть в проекте по умолчанию.

Рассмотрим компонент BottomNavigationView боле подробно. Он содержит идентификатор nav_view, и имеет значение ширины – 0dp. Это рекомендуемое значение для всех элементов, ширина которых регулируется ограничениями, заданными корневым элементом разметки ConstraintLayout. Мы видим эти ограничения ниже, они привязывают панель к нижней части родителя, который, в свою очередь, занимает весь экран.

Высота BottomNavigationView задана по контенту, но можно установить фиксированную нужного вам размера.

Далее идут два параметра layout_marginStart и layout_marginEnd. Они регламентируют отступ слева и справа, но поскольку значения здесь равны нулю, они ни на что не влияют, и их можно удалить.

Параметр android:background содержит ссылку на атрибут windowBackground  и делает фон панели такой же, как фон экрана. Если вы хотите получить цвет панели, такой как на гайдлайнах  сайта material.io, то замените параметр android:background=»?android:attr/windowBackground» таким:

<com.google.android.material.bottomnavigation.BottomNavigationView
    android:id="@+id/nav_view"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
   
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:menu="@menu/bottom_nav_menu" />

Кстати, на сайте material.io можно найти много полезных рекомендаций как по дизайну, так и по реализации компонентов визуального интерфейса. На странице Bottom Navigation, например, указано, что рекомендованное число элементов панели нижней навигации должно быть от трех до пяти. Подписи должны быть максимально короткими и состоять, по возможности, из одного слова.

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

Добавление пунктов меню

Но вернемся к нашему проекту и компоненту BottomNavigationView в макете activity_main.xml.

Нас интересует последний параметр:

app:menu="@menu/bottom_nav_menu"

 

Он ссылается на файл bottom_nav_menu.xml в папке res/menu. Этот файл содержит описание пунктов меню нижней панели навигации. Следовательно, добавлять новые пункты следует здесь.

<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas. android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/mobile_navigation"
    app:startDestination="@+id/navigation_home">

    <fragment
        android:id="@+id/navigation_home"
        android:name="info.fandroid.bottomnavapplication17.ui.home.HomeFragment"
        android:label="@string/title_home"
        tools:layout="@layout/fragment_home" />

    <fragment
        android:id="@+id/navigation_dashboard"
        android:name="info.fandroid.bottomnavapplication17.ui.dashboard.DashboardFragment"
        android:label="@string/title_dashboard"
        tools:layout="@layout/fragment_dashboard" />

    <fragment
        android:id="@+id/navigation_notifications"
        android:name="info.fandroid.bottomnavapplication17.ui.notifications.NotificationsFragment"
        android:label="@string/title_notifications"
        tools:layout="@layout/fragment_notifications" />
    <fragment
        android:id="@+id/navigation_fourth"
        android:name="info. fandroid.bottomnavapplication17.ui.fourth.FourthFragment"
        android:label="@string/title_fourth"
        tools:layout="@layout/fourth_fragment" />
    <fragment
        android:id="@+id/navigation_fifth"
        android:name="info.fandroid.bottomnavapplication17.ui.fifth.FifthFragment"
        android:label="@string/title_fifth"
        tools:layout="@layout/fifth_fragment" />
</navigation>

Добавим пару элементов <item> для четвертого и пятого фрагментов. Их идентификаторы должны совпадать с идентификаторами пунктов назначения в  графе навигации. Также укажите соответствующие строковые ресурсы в качестве названия пунктов в android:title.

Добаление идентификаторов в контроллер навигации

Осталось добавить идентификаторы пунктов навигации в конфигурацию контроллера навигации в классе MainActivity.

package info.fandroid.bottomnavapplication17

import android.os.Bundle
import com.google. android.material.bottomnavigation.BottomNavigationView
import androidx.appcompat.app.AppCompatActivity
import androidx.navigation.findNavController
import androidx.navigation.ui.AppBarConfiguration
import androidx.navigation.ui.setupActionBarWithNavController
import androidx.navigation.ui.setupWithNavController

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        val navView: BottomNavigationView = findViewById(R.id.nav_view)

        val navController = findNavController(R.id.nav_host_fragment)
        // Passing each menu ID as a set of Ids because each
        // menu should be considered as top level destinations.
        val appBarConfiguration = AppBarConfiguration(setOf(
                R.id.navigation_home,
            R.id.navigation_dashboard,
            R. id.navigation_notifications,
            R.id.navigation_fourth,
            R.id.navigation_fifth))
        setupActionBarWithNavController(navController, appBarConfiguration)
        navView.setupWithNavController(navController)
    }
}

Переменная класса АppBarConfiguration содержит набор идентификаторов пунктов навигации и передается вместе с контроллером – хостом навигации – в функцию setupActionBarWithNavController. Это нужно для того, чтобы система считала каждый из пунктов назначения пунктом верхнего уровня. В противном случае каждый фрагмент будет отображать стрелку возврата назад в тулбаре слева, как это отображается на дочерних активити и фрагментах.

Попробуйте убрать какой-либо из идентификаторов пунктов назначения из набора, переданного в переменную appBarConfiguration, запустите приложение и посмотрите на экран пропущенного пункта назначения, и вы поймете, о чем речь.

Теперь, когда добавление закончено, запустите приложение. Все добавленные пункты меню должны отображаться в нижней панели навигации, и при нажатии вести на соответствующие экраны.

Рефакторинг

Теперь можно навести порядок в проекте. Дело в том, что изначально в проекте фрагменты каждого экрана со своими ViewModel расположены в отдельных папках по имени каждого пункта меню нижней панели навигации, и все это лежит в папке ui. Новые же добавленные фрагменты попали просто в главный пакет. Нужно создать в папке ui новые пакеты по имени добавленных экранов.  Затем нужно перенести туда добавленные фрагменты вместе с их привязанными ViewModel. Делается это простым перетаскиванием в дереве проекта, с открытием окна рефакторинга, в котором нужно подтвердить операцию.
Теперь вы знаете, как добавить Bottom Navigation в приложение.

На этом наш урок закончен. Вопросы задавайте в комментариях. Исходный код проекта можно скачать по ссылке.

Урок 18. Как создать слайдер экранов с использованием ViewPager2 на Kotlin

Ешь и пей | Topgolf

Игра в нашем меню

Может показаться, что все мы любим веселье и игры, но мы знаем, как обращаться с кухней. Соберите своих друзей и семью и приходите жаждать вкусных блюд, десертов, соусов, гамбургеров и многого другого. Поедим и поиграем!

Выберите место, чтобы просмотреть полное меню и цены

Выберите местоположениеВыберите место — Онтарио, Калифорния, Сакраменто, Розвилл, Калифорния, Сан-Хосе, Колорадо-Спрингс, Денвер, Сентенниал, Денвер, Торнтон, Флорида, Форт-Майерс, Флорида, Джексонвилл, Флорида, Лейк-Мэри, Майами, Дорал, Флорида, Майами-Гарденс, Флорида, Орландо, Флорида, Санкт-Петербург, Флорида, Тампа, Джорджия, Атланта, Альфаретта, Джорджия, Атланта, BufordGA — Atlanta — MidtownGA — AugustaID — BoiseIL — Chicago — NapervilleIL — Chicago — SchaumburgIN — Indianapolis — FishersKS — Kansas City — Overland ParkKS — WichitaKY — LouisvilleLA — Baton RougeMD — BaltimoreMD — DC — GermantownMD — DC — National HarbourMI — Detroit — Auburn HillsMN — Миннеаполис — Бруклин Сентер МО — Сент-Луис — Честерфилд, Северная Каролина — Шарлотта — Юго-западная Северная Каролина — Шарлотта — Университет Северной Каролины — Ралей gh-DurhamNE — OmahaNJ — EdisonNJ — Mount LaurelNM — AlbuquerqueNV — Las VegasNY — Long Island — HoltsvilleOH — Cincinnati — West ChesterOH — ClevelandOH — ColumbusOK — Oklahoma CityOR — Portland — HillsboroPA — Philadelphia — NortheastPA — PittsburghSC — CharlestonSC — GreenvilleSC — Myrtle BeachTN — ChattanoogaTN — KnoxvilleTN — NashvilleTX — AustinTX — DFW — AllenTX — DFW — DallasTX — DFW — Fort WorthTX — DFW — The ColonyTX — El PasoTX — Houston — KatyTX — Хьюстон — SpringTX — Хьюстон — WebsterTX — McAllen — PharrTX — San AntonioTX — WacoUT — Солт-Лейк-СитиUT — VineyardVA — DC — LoudounVA — RichmondVA — Virginia BeachWA — Seattle — Renton

Работая с лучшими кулинарными талантами региона, каждый ресторан и бар отеля Topgolf предлагает меню, составленное шеф-поваром под руководством опытного шеф-повара. Вы найдете свежий взгляд на американскую классику, местные деликатесы и сорта пива, а также неожиданные новинки. Благодаря разделяемым порциям и свежим высококачественным ингредиентам вы найдете еду и напитки такими же приятными, как и игры.

Азиатские крылышки с кунжутом

Фермерские лепешки

Инъекционные отверстия для пончиков

Сумки для гольфа в кружке Take Home

Ассортимент меню зависит от наличия и зависит от заведения.

Часто задаваемые вопросы

Есть ли у вас вегетарианские блюда?

Да, несколько блюд в нашем меню являются вегетарианскими или могут быть изменены на вегетарианские:

  • Сырные макароны без соуса
  • Теплые крендельки
  • Гуак и чипсы
  • Начос
  • Хуст003 Фасоль0034
  • Margherita Flatbread
  • French Fries
  • Tater Tots
  • Injectable Donut Holes
  • Double Trouble Cookie Skillet
  • Cookie Crumble Sundae
  • Kids Grilled Cheese

Modifications: Sub a Black Bean Patty on any of our burgers.

Есть ли у вас безглютеновые блюда?

Продукты, которые являются или могут быть изменены, чтобы быть безглютеновыми:

  • Queso Blanco & Chips
  • Guac & Chips
  • Куриный соус Buffalo без начинки из чеддера
  • Harvest Hummus
  • Topgolf Wings на кости (обычный, Buffalo, лимонный перец, чесночный пармезан)
  • Любые лепешки с заменителем Tres Taco4 903s (курица, креветки, стейк)
  • Американские бургеры и бургеры с коптильней и безглютеновой булочкой
  • Жареный куриный сэндвич с безглютеновой булочкой
  • Салат из индейки с авокадо
  • Салат из кобба
  • Картофель фри с сыром
  • Картофель фри
  • Картофельные котлеты

У вас есть какие-нибудь веганские блюда?

Да, в нашем меню есть веганские позиции, которые можно изменить на веганские.

Могу ли я принести свою еду?

Мы не разрешаем проносить еду и напитки извне из соображений гигиены и безопасности. Единственным исключением являются торты, купленные в магазине на дни рождения или другие торжества.

ВНИМАНИЕ: На этой кухне хранятся продукты, содержащие аллергены и глютен. Имейте в виду, что может быть вероятность перекрестного контакта, поэтому мы не можем гарантировать эти продукты для людей с пищевой аллергией или глютеновой болезнью. Гостям рекомендуется учитывать эту информацию, поскольку она касается их индивидуальных диетических потребностей и потребностей. Перед размещением заказа сообщите официанту, если у кого-то из вашей группы есть пищевая аллергия.

Top of the Falls Restaurant Menu

Аптизаторы и салаты

Загруженная картофель фри — $ 10,99
Бэкон, Джалапено Пепперс, Зеленый лук, куриная салата Янси — $

. Грудка, романо, свежие ягоды, нарезанный миндаль, сушеная клюква, сыр азиаго,
чернично-гранатовый винегрет

КРЫЛЬЯ БУФФАЛО БЕСКОСТНЫЕ — 16,99 долл.0003

Сэндвичи

Говядина на Weck — 16,49 долл. США
.
Нарезанная говядина, обжаренный лук, фирменный соус Yancey’s с тремя сырами, рулет Costanzo’s NY Kaiser, картофель фри Кайзер Ролл, Картофель фри

с двойным сырным беконом Burger — $ 18,99
Говяжий бургер, сыр Адамс Чеддер, бекон, причудливый соус из трех сырков,
Костенцо в ны. Грудка, нарезанный салат романо, сыр азиаго, соус «Цезарь», шпинатная тортилья, картофель фри

 

Первые блюда

МАК И СЫР ИЗ БУФФАЛО — $17,99 Крылышки, соус Баффало

NIAGARA FISH & CHIPS — 19,99 $
NY Amber Lager Пикша в кляре, салат из капусты, соус тартар, картофель фри Гуакамоле, айоли с кинзой и лаймом

 

Детское меню

Включает яблочное пюре, сувенирную чашку и напитки

КУРИНЫЕ БЛОКИ  — 9,95 долл. США
Картофель фри, ранчо 3

115 PASTA

— $9.95
Barilla Cavatappi Pasta, Marinara Sauce, Asiago Cheese

MAC-N-CHEESE — $9.

Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *