{% extends 'base.html.twig' %}
{% block title %}
{{ photo.influencer.name|title }}
Nude Photo #{{ photo.id }}
- Share-Nude
{% endblock %}
{% block description %}Nude photo #{{ photo.id }}
of
{{ photo.influencer.name|title }}
posted
{% if photo.user.username != 'Admin' %}by
{{ photo.user.username }}
{% endif %}on Share-Nude on
{{ photo.createdAt|date('Y-m-d') }}. More nudes of
{{ photo.influencer.name|title }}
Onlyfans on Share-Nude
{% endblock %}
{% block meta %}
<meta content="{{ photo.influencer.name|title }} Nude Photo #{{ photo.id }}" property="og:title"/>
<meta content="Share-Nude" property="og:site_name"/>
<meta content="en_EN" property="og:locale"/>
<meta content="article" property="og:type"/>
<meta content="https://share-nude.com{{ app.request.requestUri }}" property="og:url"/>
<meta content="https://share-nude.com{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/' ~ (photo.webp ?? photo.slug)) }}" property="og:image"/>
<meta content="image/{{ photo.webp is not null ? 'webp' : 'jpeg' }}" property="og:image:type"/>
<meta content="Nude photo #{{ photo.id }} of {{ photo.influencer.name|title }}{% if photo.user.username != 'Admin' %} posted by {{ photo.user.username }}{% endif %} on Share-Nude. More nudes of {{ photo.influencer.name|title }} on Share-Nude" property="og:description"/>
<link rel="canonical" href="{{sharenude|raw}}/p/{{ photo.influencer.slug }}/{{ photo.id }}"/>
{# Twitter Card #}
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:title" content="{{ photo.influencer.name|title }} Nude Photo #{{ photo.id }}"/>
<meta name="twitter:description" content="Nude photo #{{ photo.id }} of {{ photo.influencer.name|title }} on Share-Nude"/>
<meta name="twitter:image" content="https://share-nude.com{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/' ~ (photo.webp ?? photo.slug)) }}"/>
{# Schema.org JSON-LD - ImageObject #}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "ImageObject",
"name": "{{ photo.influencer.name|title }} Nude Photo #{{ photo.id }}",
"description": "Nude photo of {{ photo.influencer.name|title }}{% if photo.influencer.onlyfans|length > 0 %} ({{ photo.influencer.onlyfans }} OnlyFans){% endif %}{% if photo.influencer.mym|length > 0 %} ({{ photo.influencer.mym }} MYM){% endif %} posted on Share-Nude",
"contentUrl": "{{sharenude|raw}}{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/' ~ (photo.webp ?? photo.slug)) }}",
"thumbnailUrl": "{{sharenude|raw}}{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/306/' ~ (photo.webp ?? photo.slug)) }}",
"url": "{{sharenude|raw}}/p/{{ photo.influencer.slug }}/{{ photo.id }}",
"datePublished": "{{ photo.createdAt|date('c') }}",
"uploadDate": "{{ photo.createdAt|date('c') }}",
"author": {
"@type": "Person",
"name": "{{ photo.influencer.name|title }}",
"url": "{{sharenude|raw}}/i/{{ photo.influencer.slug }}"
},
"publisher": {
"@type": "Organization",
"name": "Share-Nude",
"url": "{{sharenude|raw}}",
"logo": {
"@type": "ImageObject",
"url": "{{sharenude|raw}}{{ asset('sharenude.png') }}"
}
},
"interactionStatistic": {
"@type": "InteractionCounter",
"interactionType": "https://schema.org/ViewAction",
"userInteractionCount": {{ photo.views }}
},
"isPartOf": {
"@type": "ImageGallery",
"name": "{{ photo.influencer.name|title }} Photos",
"url": "{{sharenude|raw}}/i/{{ photo.influencer.slug }}"
},
"commentCount": {{ comments|length }},
"comment": [
{% for c in comments|slice(0, 10) %}
{
"@type": "Comment",
"author": {"@type": "Person", "name": "{{ c.user.username|e('js') }}"},
"dateCreated": "{{ c.createdAt|date('c') }}",
"text": "{{ c.comment|e('js') }}"
}{% if not loop.last %},{% endif %}
{% endfor %}
]
}
</script>
{# BreadcrumbList for navigation #}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "{{sharenude|raw}}"
},
{
"@type": "ListItem",
"position": 2,
"name": "{{ photo.influencer.name|title }}",
"item": "{{sharenude|raw}}/i/{{ photo.influencer.slug }}"
},
{
"@type": "ListItem",
"position": 3,
"name": "Photo #{{ photo.id }}",
"item": "{{sharenude|raw}}/p/{{ photo.influencer.slug }}/{{ photo.id }}"
}
]
}
</script>
{% endblock %}
{% block body %}
<div class="container" id="photos-page-js">
{% set breadcrumbs = [
{'label': photo.influencer.name|title, 'url': path('app_influencer', {'slug': photo.influencer.slug})},
{'label': 'Photo #' ~ photo.id, 'url': path('user_photo', {'slug': photo.influencer.slug, 'id': photo.id})}
] %}
{{ include('partials/breadcrumb.html.twig') }}
<div class="row">
<div class="col-lg-12 mx-auto my-3 text-center white">
<h1>{{ photo.influencer.name|title }}
Nude Photo #{{ photo.id }}</h1>
{{ include ('flash.html.twig') }}
<div class="mb-3">
{% if previous is not null %}
<a href="{{ path('user_photo', {'slug':previous.influencer.slug, 'id':previous.id}) }}" title="{{ photo.influencer.name|title }} Previous Photo">
<i class="fa-solid fa-arrow-left"></i>
Previous</a>
{% endif %}
{% if previous is not null and next is not null %}|
{% endif %}
{% if next is not null %}
<a href="{{ path('user_photo', {'slug':next.influencer.slug, 'id':next.id}) }}" title="{{ photo.influencer.name|title }} Next Photo">Next
<i class="fa-solid fa-arrow-right"></i>
</a>
{% endif %}
</div>
<!-- VIP Promo Banner -->
<div class="vip-promo-alert">
<a href="https://share-nude-vip.com" target="_blank" rel="noopener nofollow" class="vip-promo-link">
<span class="vip-icon">🌟</span>
<span class="vip-text">Share-Nude VIP - Toutes les photos exclusives sans pub pour seulement 1€</span>
<span class="vip-arrow">→</span>
</a>
</div>
{% if photo.webpLarge is not null %}
<a href="{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/' ~ photo.slug ~ '') }}" target="_blank" rel="nofollow" title="Fullscreen photo" data-no-swup>
{% else %}
<a href="{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/' ~ photo.webp ~ '') }}" target="_blank" rel="nofollow" title="Fullscreen photo" data-no-swup>
{% endif %}
<picture>
{% if photo.webp is not null %}<source srcset="{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/700/' ~ photo.webp ~ '') }}" type="image/webp">
{% endif %}
<img class="mb-3 mw-100" src="{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/700/' ~ photo.slug ~ '') }}" title="{{ photo.influencer.name|title }}" alt="{{ photo.influencer.name|title }}"/>
</picture>
</a>
{{ include('ads.html.twig') }}
{% if app.user == photo.user or is_granted('ROLE_ADMIN') %}
<p>
<a href="{{ path('user_edit_photo', {id:photo.id}) }}" class="btn btn-secondary">Edit</a>
<a href="{{ path('user_remove_photo', {id:photo.id}) }}" onclick="return confirm('Are you sure you want to delete this photo ?');" class="btn btn-danger">Delete</a>
</p>
{% endif %}
<p class="text-muted">Posted
{{ photo.createdAt|ago }}
{% if photo.user.username != 'Admin' and photo.user.ip is not null %}by
<a href="{{ path('user_user', {username: photo.user.username}) }}">{{ photo.user.username }}</a>
{% endif %}<br>{{ photo.views|number_format }}
<i class="fa-solid fa-eye"></i>
</p>
<p>To see more photo of
{{ photo.influencer.name }}
{% if photo.influencer.onlyfans|length > 0 %}
/
{{ photo.influencer.onlyfans }}
Onlyfans
{% endif %}
{% if photo.influencer.mym|length > 0 %}
/
{{ photo.influencer.mym }}
MyM
{% endif %}, click on the image bellow</p>
<a href="{{path('app_influencer', {slug:photo.influencer.slug})}}" title="More {{ photo.influencer.name|title }} photos and videos">
{% if photo.influencer.mainPhoto is not null %}
<picture>
{% if photo.influencer.mainPhoto.webp is not null %}<source srcset="{{sharenude|raw}}{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/196/' ~ photo.influencer.mainPhoto.webp ~ '') }}" type="image/webp">
{% endif %}
<img loading="lazy" src="{{sharenude|raw}}{{ asset('images/influencer/' ~ photo.influencer.slug ~ '/196/' ~ photo.influencer.mainPhoto.slug ~ '') }}" class="rounded-circle" title="{{ photo.influencer.name|title }} photo" alt="{{ photo.influencer.name|title }} photo"/>
</picture>
{% else %}
<picture>
<source srcset="{{ asset('images/generic-avatar.webp') }}" type="image/webp">
<img class="rounded-circle" src="{{ asset('images/generic-avatar.jpg') }}" width="96" height="96" title="{{ photo.influencer.name|title }}" alt="{{ photo.influencer.name|title }}"/>
</picture>
{% endif %}
</a>
<p class="text-muted mt-4">
Is this "{{ photo.influencer.name|title }}" photo yours and was shared without your consent?
<a href="mailto:[email protected]?subject=[DMCA on Share-Nude] Unauthorized Content Removal Request - {{ photo.influencer.name|title }} &body=Url : {{sharenude|raw}} /p/{{ photo.influencer.slug }}/{{ photo.id }}%0D%0APlease provide details about the content in question">
<br>
<button class="btn btn-sm btn-outline-danger">
Click here to reach out to us for removal.</button>
</a>
<br>
Photo will be deleted within fews days.
</p>
{{ include('comments.html.twig') }}
</div>
</div>
<div class="row" id="photo-container">
<h2>More nudes photos of
{{ photo.influencer.name|title }}</h2>
<div id="load-more-button" class="d-none" data-url="{{ path('load_more_photos', { 'page': 0, 'sort': app.request.query.get('sort'), 'direction': app.request.query.get('direction'), 'influencer': photo.influencer.id, 'photo': photo.id }) }}">Load more photos</div>
<div id="total-page" class="d-none" data-page="{{totalPages}}"></div>
{% for photo in photos %}
{{ include('grid_photos.html.twig') }}
{% endfor %}
</div>
<div class="row">
{{ include('loader.html.twig') }}
<div class="container">
<div class="navigation mt-2 mb-4" id="pagination-container d-none">
{# {{ knp_pagination_render(photos) }} #}
</div>
</div>
</div>
</div>
{% endblock %}
{% block javascripts %}{% endblock %}